【发布时间】:2016-09-29 21:12:56
【问题描述】:
我有一个大型 pandas 数据框,它是从字典列表创建的,其中列名是字典键。这些列包含不同类型的数据,但任何给定列中的数据类型都是一致的。
示例:我的一列包含 28x28 numpy 数组,另一列包含字符串……等等。我想将其保存为 HDF5 文件,具有表格格式,以便以后读取数据时可以查询数据(这些文件约为 1-2 GB)。
这就是我尝试保存 hdf5 文件的方式:
df = pd.DataFrame(list_of_dicts)
df.convert_objects(convert_numeric=True) (**have also tried pd.to_numeric)**
df.to_hdf(path_to_save, 'df', format='table')
我收到以下错误:
TypeError:无法序列化列 [image_dims],因为 它的数据内容是 [mixed] object dtype
在这种情况下,image_dims 列的每个条目都有一个 numpy 数组,这发生在 pandas 中具有对象数据类型的任何列上,我不知道如何更改/设置它。我可以将其保存为固定格式,但我真的很想使用表格来节省加载时间等,查询。我看到了一些与此类似的其他问题,但与从字典列表创建数据框无关,这可能会导致问题?
感谢您的任何建议
【问题讨论】:
标签: database pandas dataframe pytables zodb