2024-10-02 00:41:24 发布
网友
如何查看给定的.h5文件在Python中有哪些变量、数据集等?在
我可以通过运行这个来读取文件
import h5py f = h5py.File(filename, 'r')
现在如何查看.h5文件中有哪些变量?在
运行f.keys()输出非信息性的
f.keys()
在Matlab中,我只调用h5disp(文件名),但想知道如何在Python中实现它
也许有点过火,但我有这个可能对某些人有用:
from __future__ import print_function def scan_hdf5(path, recursive=True, tab_step=2): def scan_node(g, tabs=0): print(' ' * tabs, g.name) for k, v in g.items(): if isinstance(v, h5.Dataset): print(' ' * tabs + ' ' * tab_step + ' -', v.name) elif isinstance(v, h5.Group) and recursive: scan_node(v, tabs=tabs + tab_step) with h5.File(path, 'r') as f: scan_node(f)
简单的输入:
或者是另一个版本,它返回更有用的元素:
def scan_hdf52(path, recursive=True, tab_step=2): def scan_node(g, tabs=0): elems = [] for k, v in g.items(): if isinstance(v, h5.Dataset): elems.append(v.name) elif isinstance(v, h5.Group) and recursive: elems.append((v.name, scan_node(v, tabs=tabs + tab_step))) return elems with h5.File(path, 'r') as f: return scan_node(f)
有回报:
>>> scan_hdf5_2('/tmp/dummy.h5') [u'/d1', (u'/g1', [u'/g1/d2', u'/g1/d3']), (u'/g2', [u'/g2/d4', (u'/g2/g3', [u'/g2/g3/d5'])])]
你试过了吗?在
print(list(f.keys()))
这样就可以得到hdf5文件中的所有组。如果f是一个组,则可以对数据集执行相同的操作。在
也许有点过火,但我有这个可能对某些人有用:
简单的输入:
^{pr2}$或者是另一个版本,它返回更有用的元素:
有回报:
你试过了吗?在
这样就可以得到hdf5文件中的所有组。如果f是一个组,则可以对数据集执行相同的操作。在
相关问题 更多 >
编程相关推荐