gpt4 book ai didi

python - 用 pandas 读取 hdf5 数据集

转载 作者:太空宇宙 更新时间:2023-11-03 11:23:38 25 4
gpt4 key购买 nike

我正在尝试用 pandas 打开一个无组的 hdf5 文件:

import pandas as pd
foo = pd.read_hdf('foo.hdf5')

但是我得到一个错误:

TypeError: cannot create a storer if the object is not existing nor a value are passed

我尝试通过分配一个 key 来解决这个问题:

foo = pd.read_hdf('foo.hdf5','key')

如果 key 是一个组,但该文件没有组,而是最高 hdf 结构中的多个数据集,则该方法有效。即工作文件的结构是:Groups --> Datasets,而不工作文件的结构是:Datasets。使用 h5py 打开它们时两者都工作正常,我将在其中使用:

f = h5py.File('foo.hdf5','r')

dset = f['dataset']

查看数据集。任何想法如何在 Pandas 中阅读这个?

最佳答案

我认为您对不同的术语感到困惑 - Pandas 的 HDF 存储 key 是完整路径,即 Group + DataSet_name...

演示:

In [67]: store = pd.HDFStore(r'D:\temp\.data\hdf\test.h5')

In [68]: store.append('dataset1', df)

In [69]: store.append('/group1/sub_group1/dataset2', df)

In [70]: store.groups
Out[70]:
<bound method HDFStore.groups of <class 'pandas.io.pytables.HDFStore'>
File path: D:\temp\.data\hdf\test.h5
/dataset1 frame_table (typ->appendable,nrows->9,ncols->2,indexers->[index])
/group1/sub_group1/dataset2 frame_table (typ->appendable,nrows->9,ncols->2,indexers->[index])>

In [71]: store.items
Out[71]:
<bound method HDFStore.items of <class 'pandas.io.pytables.HDFStore'>
File path: D:\temp\.data\hdf\test.h5
/dataset1 frame_table (typ->appendable,nrows->9,ncols->2,indexers->[index])
/group1/sub_group1/dataset2 frame_table (typ->appendable,nrows->9,ncols->2,indexers->[index])>

In [72]: store.close()

In [73]: x = pd.read_hdf(r'D:\temp\.data\hdf\test.h5', 'dataset1')

In [74]: x.shape
Out[74]: (9, 2)

In [75]: x = pd.read_hdf(r'D:\temp\.data\hdf\test.h5', '/group1/sub_group1/dataset2')

In [76]: x.shape
Out[76]: (9, 2)

关于python - 用 pandas 读取 hdf5 数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38018186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com