我正在尝试使用 Python 将 HDF5 文件中的列堆栈和行堆栈数据与其他数据一起使用。我正在从相机记录图像并将它们保存到单个文件中。然后我希望能够生成一个将所有图像拼凑在一起的单个文件。因此,我希望能够在一个新文件中创建一个数据集,并将每个图像文件中的所有数组堆叠到一个文件中。
我知道 h5py 允许我使用像 numPy 数组这样的数据集,但我不知道如何告诉 h5py 再次将数据保存到文件中。下面我有一个非常简单的例子。
我的问题是如何将 HDF5 文件中的数据与第二个数组 (arr2) 进行列堆叠,以便将 arr2 保存到文件中?
(注意:在我的实际应用中,文件中的数据会比示例中的大很多。因此,将数据导入内存,列堆叠,然后重写到文件中是不可能的。)
import h5py
import numpy
arr1 = numpy.random.random((2000,2000))
with h5py.File("Plot0.h5", "w") as f:
dset = f.create_dataset("Plot", data = arr1)
arr2 = numpy.random.random((2000,2000))
with h5py.File("Plot0.h5", "r+") as f:
dset = f["Plot"]
dset = numpy.column_stack((dset, arr2))
这似乎是一个微不足道的问题,但我所有的搜索都没有成功。提前致谢。