R でデータ フレームを圧縮する方法はありますか。データ フレームにインポートしたい外部ファイルがあります。ただし、データが大きいため、メモリエラーが発生します。R ではデータ構造の作成に RAM メモリを使用するため、R で圧縮が意味があるかどうかはわかりませんが、圧縮と同義の何かを使用できると本当に助かります。
3 に答える
ff パッケージよりも大きなデータ フレームがある場合は、大きなデータを小さなサイズで保存するのに役立つ場合があります。CRANで利用可能なffパッケージを探してみてください
このdata.table
パッケージはデータ フレームと同様のデータを保存しますが、効率が向上するため、データを十分に圧縮できます。
より一般的な解決策は、データを R に直接ではなくデータベースにロードし、データベースから必要な部分だけを取得することです。sqldf および RSQLite パッケージが役立つ場合があります。以前は、このプロセスを透過的にする SQLiteDF と呼ばれるパッケージがありました (データはデータベースにありましたが、R にはデータ フレームのように見えて動作するオブジェクトがありましたが、データベースからデータをプルしました)。CRAN から入手できるパッケージのアーカイブ コピーがありますが、R の最近のバージョン (パッケージの最新バージョンは 2009 年) で動作させるには、おそらくいくつかの作業が必要になるでしょう。
コメントに記載されているCRANタスクビューページには他のツールがあり(「大容量メモリ」セクションまでスクロールします)、他のいくつかの可能性と、RAMで処理するには大きすぎるデータを分析する方法について説明しています。