numpy - 如何连接两个 hdf5 格式的 numpy 数组?

标签 numpy hdf5 h5py

我有两个存储在 hdf5 中的 numpy 数组 每个 44 GB。我需要将它们连接在一起 但需要在磁盘上进行,因为我只有 8GB 内存。 我该怎么做?

谢谢!

最佳答案

相关帖子是为了在生成的文件中获取不同的数据集。在 Python 中这是可能的,但您需要在多个操作中读取和写入数据集。比如说,从文件 1 中读取 1GB,写入输出文件,重复直到从文件 1 中读取所有数据,然后对文件 2 执行相同的操作。您需要直接在适当的最终大小的输出文件中声明数据集

d = f.create_dataset('name_of_dataset', shape=shape, dtype=dtype, data=None)

其中 shape 是根据数据集计算的,dtype 与数据集中的匹配。

写入d: d[i*N:(i+1)N] = d_from_file_1[iN:(i+1)*N]

这应该只会将部分数据集加载到内存中。

关于numpy - 如何连接两个 hdf5 格式的 numpy 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43929420/

相关文章:

python - 将 HDF5 (.h5) 转换为 spark 数据帧

python - 将图像文件夹转换为 .h5 文件?

python h5py文件读取 "OSError: Unable to open file (bad superblock version number)"

python - 从向量列表计算距离矩阵

python - 从多个线程调用 NumPy 的 C API 函数有什么含义?

python - 从经过训练的 keras 模型中获取训练超参数

python - 如何在 HDF5 文件中保存 Python dtype ('object' )?

python - 如何扩展 h5py 以便我可以访问 hdf5 文件中的数据?

python - 不理解 NumPy loadtxt 中的转换器行为

python - 如何用 numpy 拟合特定的指数函数