1. 核心概念
一个HDF5文件是一种存放两类对象的容器:dataset和group. Dataset是类似于数组的数据集,而group是类似文件夹一样的容器,存放dataset和其他group。在使用h5py的时候需要牢记一句话:groups类比词典,dataset类比Numpy中的数组。
HDF5的dataset虽然与Numpy的数组在接口上很相近,但是支持更多对外透明的存储特征,如数据压缩,误差检测,分块传输。
2. 读取和保存HDF5文件
1) 读取HDF5文件的内容
首先我们应该打开文件:
>>> import h5py
>>> f = h5py.File('mytestfile.hdf5', 'r')
请记住h5py.File类似Python的词典对象,因此我们可以查看所有的键值:
>>> f.keys()
[u'mydataset']
基于以上观测,文件中有名字为mydataset这样一个数据集。然后我们可以用类似词典的方法读取对应的dataset对象。
>>> dset = f['mydataset']
Dset是一个HDF5的dataset对象,我们可以像Numpy的数组一样访问它的属性和数据。
>>> dset.shape
(100,)
>>> dset.dtype
dtype('int32')
>>> dset[...] = np.aran