2016-09-09 8 views
0

サブグループまたはデータセットとして、すべてのインデックスおよびヘッダー情報を含む既存のh5pyファイルにpandas DataFrameオブジェクトを追加します。それは可能ですか?私は次のことを試してみました:pandas DataFrameをh5pyのグループに保存して後で使用できるようにする

import pandas as pd 
import h5py 
f = h5py.File('f.h5', 'r+') 
df = pd.DataFrame([[1,2,3],[4,5,6]], columns=['A', 'B', 'C'], index=['X', 'Y']) 
f['df'] = df 

別のスクリプトから、私はf.h5にアクセスしたいと思いますが、f['df'][()]の出力は、ヘッダ情報が含まれていないarray([[1, 2, 3],[4, 5, 6]])、です。

答えて

1

あなたがh5py

ドキュメントに関連付けられていない場合はパンダpd.DataFrame.to_hdf()pd.read_hdf()を使用して試みることができる:http://pandas.pydata.org/pandas-docs/stable/io.html#io-hdf5

がH5ファイルに書き込むには:

df = pd.DataFrame([[1,2,3],[4,5,6]], 
        columns=['A', 'B', 'C'], index=['X', 'Y']) 

df.to_hdf('f.h5', 'table',append=True) 

次にあなたがすることによって読むことができます:

と追加できます。

df2.to_hdf('f.h5', 'table', append=True) 

pd.read_hdf('f.h5', 'table') 

    A B C 
X 1 2 3 
Y 4 5 6 
X 1 2 3 
Y 4 5 6 
関連する問題