我有一个 matlab 数组 > 2GB ...我想使用 h5py 读取它。数据是一个简单的 3D 双精度数组。但我根本无法在互联网上找到线索。
有人能帮我吗 ?我只需要一个例子,它是如何完成的。h5py 文档帮不了我。
这个问题之前已经回答过,但指的是.mat
文件。正如@vikrantt 所说-我正在复制他的示例代码,- Matlab 的最新版本保存为 HDF5 格式,您可以:
import numpy as np, h5py
f = h5py.File('somefile.mat','r')
data = f.get('data/variable1') # Get a certain dataset
data = np.array(data)
请注意,这在h5py
自己的关于它的高级 API的文档中有所介绍。我建议阅读Group Objects以更好地了解如何从文件中提取信息,然后阅读Numpy Compatibility
使用字典语法的替代方法:
import h5py
f = h5py.File('somefile.mat','r')
myvar = f['myvar'].value
要加载所有值,请查看: https ://stackoverflow.com/a/29856030/1615523