11

非常に大きなデータセット (約 1 億 4000 万行) で gbm パッケージを使用して実験しようとしていますが、R のメモリ要件に関する問題に遭遇しました。

パッケージ 'gbm' と 'bigmemory' を組み合わせてみましたが成功しませんでした。次に考えたのは、C++ ソース コードを変更して、データセットを保存したローカル データベースからデータを取得することでした。

そのため、gbm の C++ コード内の割り当てを変更するためのより適切な、またはよく知られている方法があるかどうか疑問に思っていました。誰かが似たようなことを試しましたか?

4

2 に答える 2

3

私はgbmパッケージに精通していませんが、データフレームまたはある種のベクトルで機能する場合は、ffパッケージを使用できます。

引用:ffパッケージは、ディスクに保存されているが、メインメモリのセクション(ページサイズ)のみを透過的にマッピングすることにより、RAMにあるかのように(ほぼ)動作するデータ構造を提供します...

于 2012-10-24T21:55:42.287 に答える
2

CRAN では、C コードがまだテキスト ファイルにある各パッケージのコンパイルされていないバージョンを取得できます。gbm のパッケージ ソースへのリンクは次のとおりです: http://cran.cnr.berkeley.edu/src/contrib/gbm_1。 6-3.2.tar.gz . パッケージを抽出し、C コードを変更して、R CMD INSTALL コマンドで自分でコンパイルすると、変更したコードでパッケージを R にロードできます。

于 2012-09-28T12:35:37.087 に答える