混合模式下的Pandas数据帧无法序列化为hdf5?

时间:2012-03-10 15:35:27

标签: python hdf5 pandas

在Pandas中,我似乎无法存储混合类型的数据框:

store = HDFStore('play.h5')
df = DataFrame([{'a': 1, 'b': 'hello'}, {'a': 5, 'b': 'world'}])
store.put('df', df, table=True, compression='zlib')

这会产生 Exception: Cannot currently store mixed-type DataFrame objects in Table format

这是由于熊猫的某些固有限制还是未来的好事?似乎HDFStore对此限制不太有用,因为许多数据帧都是混合类型。

1 个答案:

答案 0 :(得分:3)

表格格式以记录形式存储所有数据,即所有值都存储在单个列中。有一种可以使用的替代表格式(每个DataFrame列一列),但我还没有实现。基本上表格格式旨在支持查询

如果你做table = False,可以存储混合型DataFrame。欢迎更多关于这些功能的工作。