在Matlab中使用巨大的HDF5文件并在Python中导入它

问题描述 投票:0回答:1

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

  1. 我的问题是如何找到完美的块大小和缩小比例?在玩完之后,我发现大小为1 x 1,000,000,deflate设置为7,文件达到100 MB。
  2. 我的第二个问题是我无法在Python中导入此文件

Matlab

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

Python

import h5py
filename = 'Xn.h5'
f = h5py.File(filename, 'r')

print("Keys: %s" % f.keys())

我希望Python能像matlab一样顺利处理数据,但这种情况从未发生过

python matlab hdf5
1个回答
0
投票

好吧,好像它似乎结果,这个问题更多地与“如何在python中的hdf5容器中访问我的数据?”相关。

你找到一个非常好的快速入门指南here

访问数据的过程如下:

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]
© www.soinside.com 2019 - 2024. All rights reserved.