我有以下 Pandas 数据框:
import pandas as pd
df = pd.read_csv(filename.csv)
现在,我可以使用
HDFStore
写df
对象到文件(例如将键值对添加到 Python 字典):store = HDFStore('store.h5')
store['df'] = df
http://pandas.pydata.org/pandas-docs/stable/io.html
当我查看内容时,这个对象是
frame
.store
输出
<class 'pandas.io.pytables.HDFStore'>
File path: store.h5
/df frame (shape->[552,23252])
但是,为了使用索引,应该将其存储为
table
目的。我的方法是尝试
HDFStore.put()
IE。HDFStore.put(key="store.h", value=df, format=Table)
但是,这失败并出现错误:
TypeError: put() missing 1 required positional argument: 'self'
如何将 Pandas Dataframes 保存为 PyTables 表?
最佳答案
公共(public)部分 - 创建或打开现有的 HDFStore 文件:
store = pd.HDFStore('store.h5')
如果你想索引 ,试试这个全部 列:
store.append('key_name', df, data_columns=True)
或者如果您只想索引列的一个子集,则可以这样做:
store.append('key_name', df, data_columns=['colA','colC','colN'])
PS
HDFStore.append()
在 table
中默认保存 DF格式
关于python - 如何将 Pandas DataFrame 存储为 HDF5 PyTables 表(或 CArray、EArray 等)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38460744/