Matlab中巨大的HDF5文件并将其导入Python



我在 Matlab 中创建了一个矩阵大小为 (1 x 19,000,000( 的 hdf5 文件。该文件的大小为 150 兆字节。

  1. 我的问题是如何找到完美的块大小和放气率?在尝试之后,我发现 1 x 1,000,000 的块大小在 deflate 设置为 7 的情况下实现了 100 MB 的文件。

  2. 我的第二个问题是我无法在 Python 中导入此文件

马特实验室

h5create('Xn.h5','/rawdata',size (data),'ChunkSize',[1 1000000],'Deflate',7 )

import h5py
filename = 'Xn.h5'
f = h5py.File(filename, 'r')
print("Keys: %s" % f.keys())

我预计Python会像matlab一样顺利地处理数据,但这从未发生过

好吧,事实证明,这个问题与"如何在 python 中的 hdf5 容器中访问我的数据?

您可以在此处找到一个非常好的快速入门指南。

访问数据的过程如下所示:

import h5py
f = h5py.File(filename, 'r') 
key = list(f.keys())[0]
dataset = f[key]
# To retrieve e.g. the first 10 elements of a 1D dataset execute
data = dataset[0:9]

最新更新