【发布时间】:2020-11-28 13:58:27
【问题描述】:
我有数据存储在 .h5 中。我使用以下代码显示组名,并调用其中一个组 (Event_[0]) 来查看里面的内容:
with h5py.File(data_path, 'r') as f:
ls = list(f.keys())
print('List of datasets: \n', ls)
data = f.get('group_1')
dataset1 = np.array(data)
print('Shape of dataset1: \n', dataset1.shape)
f.close()
它工作正常,但我有 2000 个组,每个组有一个数据集。如何避免为每个组编写相同的代码?有没有办法得到('所有组')?
编辑:再举一个例子:我用
f['Event_[0]'][()]
查看一组。这也可以应用于多个组吗?
【问题讨论】:
-
你不使用 pandas 有什么原因吗?你能提供一个你的数据和你正在创建的组的例子吗?
-
@Andreas,这与
pandas样式分组无关。这里group是文件数据层次结构中的一个级别。 -
啊,我的意思是我不是 h5 专家,但文档指出:“n HDF5 组是一个包含零个或多个 HDF5 对象的结构。一个组有两个部分:一个组标题,其中包含一个组名和一个组属性列表。“如果你通过 pandas 加载它会发生什么?组名没有显示吗?例如作为一列还是什么?
-
@Andreas,我希望就这么简单;不能使用熊猫。该文件包含: 1 个文件夹,其中包含 2000 多个组(键)。我想一起展示里面的东西。但我只为一个小组找到了如何做到这一点。
-
@Andreas,对
HDF5文件使用不同的界面pytables。