【发布时间】:2019-09-25 04:25:18
【问题描述】:
我在 MATLAB 中创建了以下带有“-v7.3”标志的 .mat 文件。由于数据量很大,我需要这个标志。我在 MATLAB 中使用了以下命令来保存这个文件。
save('sample10_properties.mat', 'stats','-v7.3')
这是数据的链接
https://drive.google.com/file/d/195fj6Tl1n_drS8R_A6bdbOEc3rGkiMqS/view?usp=sharing
我可以在 python 中看到 stats 变量,但我不知道如何访问。任何帮助将不胜感激。
import numpy as np
import h5py
f = h5py.File('sample10_properties.mat')
f.keys() [u'#refs#', u'#subsystem#', u'stats']
f.values() [<HDF5 group "/#refs#" (13951 members)>, <HDF5 group "/#subsystem#" (1 members)>, <HDF5 dataset "stats": shape (1, 6), type "<u4">]
stats 变量的大小为 (1390, 18)。 谢谢
【问题讨论】:
-
以 HDF5 格式存储的 Unsnarling Matlab 文件对于新用户来说可能会很棘手。 Matlab 创建不是数据的“指针对象”,而是给出文件中另一个对象的路径。使用 HDFView 查看架构。组
/#subsystem#中的表MCOS有一行包含11 个字段,每个字段都指向另一个对象(例如/#refs#/b) 引用的表有1x288 的8 位无符号整数然后/#refs#/中有额外的表用于b0 , b0b, b0c, b1, b1b, b1c。不知道该怎么做。您可以通过 SVHN 数据集看到这一点。 -
链接到我的答案:different-ways-of-accessing-the-hdf5-group-in-svhn 关于类似的 Matlab/HDF5 文件问题。