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

3
在Pandas中,似乎无法存储混合类型的数据框:
store = HDFStore('play.h5')
df = DataFrame([{'a': 1, 'b': 'hello'}, {'a': 5, 'b': 'world'}])
store.put('df', df, table=True, compression='zlib')

这是一个异常(Exception),错误原因是无法将混合类型的DataFrame对象以表格格式存储。

这是Pandas的固有限制还是未来的良好功能?看起来,由于许多数据帧都是混合类型的,HDFStore在这种限制下不会非常有用。

1个回答

3
表格格式将所有数据以记录形式存储,即所有值都存储在单个列中。虽然有一种可用的备选表格格式(每个DataFrame列一个列),但我尚未实现它。基本上,表格格式旨在支持查询。
如果您设置table=False,则可以存储混合类型的DataFrame。欢迎更多关于这些功能的工作。

我之所以将table=True设置为True,是因为我想要将数据附加到现有的表中,以处理非常大的数据集。因此,似乎追加和混合类型的组合仍在待办事项列表上? - David van Coevorden

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接