HDF5格式显然不支持format =“fixed”的分类。以下示例
s = pd.Series(['a','b','a','b'],dtype='category')
s.to_hdf('s.h5','s')
返回错误:
NotImplementedError:无法在使用format =“fixed”的HDF5数据集中存储类别dtype。使用format =“table”。
如何使用format ='table'构建分类系列?
答案 0 :(得分:5)
在format='table'
中指定format='t'
或pd.Series.to_hdf
:
s.to_hdf('s.h5', key='s', format='t')
请注意,这也是错误消息建议的内容。根据{{3}}:
格式:'fixed(f)| table(t)',默认为'固定'
固定(f):固定格式快速写入/读取。不可附加,也不是 可搜索的
table(t):表格式写为PyTables表结构,可以 表现更差,但允许更灵活的操作,如搜索/ 选择数据的子集