我有兩個數據幀,df1
它存儲在一個pd.HDFStore
對象和另一個要附加到數據幀。HDFStore更新存儲的HDF5 python熊貓數據幀
store = pd.HDFStore('dataframe_store.h5')
df1 = pd.DataFrame(np.empty((100, 5)))
df2 = pd.DataFrame(np.empty((100, 5)))
store['df1'] = df1
實際上,我想最終的結果等於...
store['df1'] = df1.append(df2)
我想追加df2
到存儲df1
,而完全用新的數據框覆蓋HDFStore
對象。這可能嗎?
此外,當我運行下面的代碼時,我會返回ValueError can only append to Tables
...爲什麼會這樣?
df = pd.DataFrame(np.empty((1000, 5)))
df2 = pd.DataFrame(np.empty((1000, 5)))
store = pd.HDFStore('store.h5')
store['df'] = df
store.append('df', df2)
我一直在尋找的文檔,並能弄明白,但如果你能解釋一下,爲什麼'店.append('df',df2)'返回'ValueError:只能附加到Tables' ...? –
您的'hdf5'文件必須以['table' format](http://pandas.pydata.org/pandas-docs/version/0.20/io.html#table-format)創建(與[ 'fixed' format](http://pandas.pydata.org/pandas-docs/version/0.20/io.html#fixed-format))。使用'df.to_hdf(filename,'df',mode ='w',format ='table')'來創建它,或者設置'pd.set_option('io.hdf.default_format','table')'所以'format ='table''是默認的格式。 – unutbu