2016-08-12 8 views
2

私はPythonで多数のファイルを処理しており、HDF5に出力(各入力ファイルごとに1つのデータフレーム)を書き込む必要があります。 私のスクリプトのpandasデータフレームを直接HDF5に直接書き込む最良の方法は何ですか?私はhdf5のような任意のpythonモジュール、hadoopyがこれを行うことができるかどうかはわかりません。この点に関する助けに感謝します。HDF5にパンダデータフレームを書き込む

+0

http://matthewrocklin.com:私は(あなたはHDF5ファイルを読み込みますときに、後でwhereパラメータでこれらの列を使用できるように)インデックスを作成する必要があります列を指定するためにdata_columnsパラメータを使用すること/ blog/work/2016/02/22/dask-distributed-part-2 –

+0

NickilはHDFSをHDF5に変更するための編集を提案しましたが、これに基づいて回答しましたが、HDFSとHDF5の両方があなたの質問の文脈で意味をなさないようです...どういう意味ですか? – Foon

答えて

1

これはやや一般的な質問に良い答えを与えるのは難しいです。

HDF5ファイルをどのように使用(読み込み)するのかはっきりしません。条件付きでデータを選択したいですか(whereパラメータを使用していますか?横に、 - 店に

store = pd.HDFStore('/path/to/filename.h5') 

今あなたが書いた(または追加)することができます(それは非常に高速かつ効率的です私はここblosc圧縮を使用しています):あなたがストアオブジェクトを開くために必要なすべての

モミ

for f in files: 
    #read or process each file in/into a separate `df` 
    store.append('df_identifier_AKA_key', df, data_columns=[list_of_indexed_cols], complevel=5, complib='blosc') 

store.close() 
関連する問題