gpt4 book ai didi

python - 使用 python h5py 读取 .mat 文件中的所有变量

转载 作者:行者123 更新时间:2023-11-28 21:15:36 28 4
gpt4 key购买 nike

我正在尝试从“.mat”v7.3 文件中提取所有变量,并将它们转换为 NumPy 数组。有没有一种方法可以通用地执行此操作,最好不需要指定变量名?如何从 h5py.File 中获取所有存在的变量名,然后检查它们的维度?

例。

 import numpy as np, h5py

file = h5py.File('data.mat','r')
for "all variables in mat file"
...fill numpy array
end

最佳答案

在看到一些评论和 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

关于python - 使用 python h5py 读取 .mat 文件中的所有变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29852481/

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