我有一个非常简单的问题:
我能否确定使用h5py
生成的HDF5文件是否已经压缩(而不必读取其中的数据)?我需要知道这一点,因为我想根据它是否被压缩来改变我的策略。
显然,我找不到答案,但如果已经有人问过了,我很抱歉。
我有一个非常简单的问题:
我能否确定使用h5py
生成的HDF5文件是否已经压缩(而不必读取其中的数据)?我需要知道这一点,因为我想根据它是否被压缩来改变我的策略。
显然,我找不到答案,但如果已经有人问过了,我很抱歉。
压缩是以数据集属性的形式处理的。换句话说,有些可能被压缩,有些则不会。在读取数据值时,您无需知道数据集是否已经压缩 - 它会自动处理。
但是,如果您仍然想要这样做,有几种方法可以检查。
h5dump -H -p filename
h5ls -v filename
.compression
属性。以下是 Python 代码:
with h5py.File('yourfile.h5') as h5f:
print (h5f['dataset_name'].compression)
compression
属性而不用搜索。很疯狂的是,简单的谷歌搜索没有任何关于此的结果。无论如何,仅供参考,我需要知道文件是否压缩了,因为我发现如果文件已经压缩,读取数据会减慢任何其他正在运行的线程(特别是GUI线程),而且我需要根据数据是否压缩来更改读取数据的策略。这样就可以了,非常感谢! - Francesco