我有一个相当简单的问题:
我可以确定用h5py
生成的HDF5文件是否被压缩(不读取其中的数据(吗?我需要知道它,因为我想根据它是否被压缩来改变我的策略。
显然,我找不到答案,但如果已经有人问我,我道歉。
压缩作为数据集属性处理。换言之,有些可能会被压缩,有些则可能不会。在读取数据值时,您不需要知道数据集是否被压缩——它是自动处理的。
然而,如果你仍然想这样做,有几种方法可以检查。
- HDF5 h5dump实用程序:
h5dump -H -p filename
- HDF5 h5ls实用程序:
h5ls -v filename
- 使用少量Python/h5py代码获取数据集的
.compression
属性
下面的Python代码:
with h5py.File('yourfile.h5') as h5f:
print (h5f['dataset_name'].compression)