2017-09-15 4 views
-1

私は非常に大きなデータファイル(数ギガバイト)を扱うつもりです。私はこれらのファイルを読み、これらのファイルに書き込む必要があります。したがって、私はRAMに依存してデータを保存することができず、ディスクからファイルを読み書きする必要があります。pandasデータフレームを使用してディスクからファイルを読み書きする方法は?

私はパンダのライブラリが提供するread_csvto_csvのオプションに精通しています。しかし、read csv関数がファイルを読み込んだ後にRAMに格納するか、ディスクから直接ファイルを読み込むかはわかりません。

パンダを使用してディスクからファイルを読み書きするにはどうすればよいですか?

+0

は(read_hdfに見て) – DJK

答えて

1

pandas.read_csvは、ファイル全体をメモリに読み込みます。特定の列のみが必要な場合は、usecols引数を使用して、列とパンダのサブセットがそれらの列のみをロードするように指定できます。

ファイルがメモリに収まらないため、splitを使用してディスク上のファイルを分割し、すべての操作をチャンクで実行できます。

簡単な代替手段は、daskライブラリのdask.dataframeからread_csvを使用することです。ドキュメントから

A Dask DataFrame is a large parallel dataframe composed of many smaller Pandas dataframes, split along the index. These pandas dataframes may live on disk for larger-than-memory computing on a single machine, or on many different machines in a cluster.

関連する問題