将更多数据集附加到现有 Hdf5 文件中,而不删除其他组和数据集

Posted

技术标签:

【中文标题】将更多数据集附加到现有 Hdf5 文件中,而不删除其他组和数据集【英文标题】:Appending more datasets into an existing Hdf5 file without deleting other groups and datasets 【发布时间】:2016-11-06 07:26:09 【问题描述】:

我有一个 HDF5 文件,其中包含包含数据集的组和子组。我想打开文件并将一些数据集添加到组中。我采用了以下在python中非常简单的方法。

    import h5py
    f = h5py.File('filename.h5','w')
    f.create_dataset('/Group1/subgroup1/dataset4', data=pngfile)
    f.close()

之前的文件是这样的

文件看起来像这样

但我希望它不删除其他数据集和组,而只是将 dataset4 追加到行中。

【问题讨论】:

【参考方案1】:

就像 Python 的 open() 函数一样,'w' 将截断任何现有文件。使用 'a' 模式向文件添加内容:

import h5py
f = h5py.File('filename.h5','a')
f.create_dataset('/Group1/subgroup1/dataset4', data=pngfile)
f.close()

【讨论】:

以上是关于将更多数据集附加到现有 Hdf5 文件中,而不删除其他组和数据集的主要内容,如果未能解决你的问题,请参考以下文章

将浮点数组写入和附加到 C++ 中 hdf5 文件中的唯一数据集

编写并将float数组附加到C ++中hdf5文件中的唯一数据集

使用 Pandas、Python 将数据附加到 HDF5 文件

HDF5:如何将数据附加到数据集(可扩展数组)

如何有效地将数据附加到 C 中的 HDF5 表?

从 HDF5 文件中删除数据