gpt4 book ai didi

sparse-matrix - HDF5 中的稀疏数组支持

转载 作者:行者123 更新时间:2023-12-03 22:00:33 26 4
gpt4 key购买 nike

我需要以某种方式在磁盘上存储一个 512^3 阵列,我目前使用的是 HDF5。由于阵列稀疏,因此浪费了大量磁盘空间。

HDF5 是否为稀疏数组提供任何支持?

最佳答案

一种解决方法是使用 compression option 创建数据集.例如,在 Python 中使用 h5py :

import h5py
f = h5py.File('my.h5', 'w')
d = f.create_dataset('a', dtype='f', shape=(512, 512, 512), fillvalue=-999.,
compression='gzip', compression_opts=9)
d[3, 4, 5] = 6
f.close()
生成的文件为 4.5 KB。如果没有压缩,这个相同的文件大约是 512 MB。这是 99.999% 的压缩,因为大部分数据是 -999. (或任何你想要的 fillvalue)。

通过设置 H5::DSetCreatPropList::setDeflate,可以使用 C++ HDF5 API 实现等效的功能。到 9,带有 example shown in h5group.cpp .

关于sparse-matrix - HDF5 中的稀疏数组支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3545349/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com