看到一些评论,以及对单证后H5PY Groups,我发现,您可以通过所有的H5PY“项目”的迭代,以获得与每个变量名的值。我在下面举了一个例子。如果它们是获取变量名称和值的更好方法,请发布。
注意:该示例仅抽取包含数值数组(h5py.Dataset)的变量的值。如果您有嵌套的组或单元阵列,则需要进一步访问它们以获取值。
import numpy as np
import h5py
f = h5py.File('simdata_020_01.mat','r')
variables = f.items()
for var in variables:
name = var[0]
data = var[1]
print "Name ", name # Name
if type(data) is h5py.Dataset:
# If DataSet pull the associated Data
# If not a dataset, you may need to access the element sub-items
value = data.value
print "Value", value # NumPy Array/Value
您是否在交互式会话中探索过此文件? 'h5py'是自我记录,允许你找到组和数据集的'键',并迭代它。换句话说,首先,像处理其他未知的'h5'文件一样对待文件。通过h5py上阅读7.3版 – hpaulj
以前的问题 http://stackoverflow.com/questions/27670149/read-matlab-v7-3-file-into-python-list-of-numpy-arrays-via- h5py http://stackoverflow.com/questions/19310808/how-to-read-a-v7-3-mat-file-via-h5py/27699851#27699851 – hpaulj