hdf5多个可扩展表
hdf5 multiple extensible tables
我正在分析大量文件,以提取重要的统计信息。分析程序为每个分析的文件创建大约3000个长度为n(大约100)的双数组,以及命名相应数组内容的字符串。我想将结果写入一个hdf5文件,其中每个数组都被写入一个表,该表的名称是相应的字符串。为此,我使用以下功能:
#include "hdf5.h"
#include "hdf5_hl.h"
hid_t file_id;
hsize_t dims[RANK]={1,n};
herr_t status;
void hdf5_write ( double& array , string arrayname )
{
const char * tablename = arrayname.c_str();
status = H5LTmake_dataset(file_id,tablename,RANK,dims,H5T_NATIVE_DOUBLE,array);
}
这对于分析第一个文件来说很好,但是,当一个接一个地分析多个文件时,现有的表只是被新的数组覆盖,尽管我希望新的数组分别附加到已经存在的表中。这种情况下有hdf 5功能吗?
恐怕您无法使用高级(H5LT)接口进行追加。
下面是一个使用低级接口的完整示例。它要复杂得多,但它可以让你完全控制。
或者,如果你认为这太过分了,你可以问问自己,你真的需要一个大数据集还是多个小数据集。根据您心目中的应用程序,多个数据集可能是更好的设计。
相关文章:
- 我想通过带有C++和Python的插件创建一个可扩展的应用程序
- 简化可扩展的"Perform Operation X on Data Y"框架
- 传递 std::array 参数,其大小限制为可扩展的大小集
- 在 c++ 中构建封装但可扩展的动画库
- 将ADA API暴露于C/C (可扩展方式)
- 集成多态可扩展排序顺序
- 具有可扩展矢量扩展(SVE)的ARM V-8
- C++可扩展的工厂方法
- 可扩展的 SFINAE 条件覆盖
- C 中的可扩展队列
- C++中可扩展的自动类注册
- NUMA体系结构上大(8MB)内存区域的可扩展分配
- C++中的可扩展类型特征
- 无需reinterpret_cast的可扩展库接口
- 在 C++ 中具有用户可扩展类型参数的类型化类
- QTreeView-删除某些元素的可扩展外观
- 用于C++的快速、大且可扩展的几何图形库
- hdf5多个可扩展表
- 可扩展条件语句的机制
- 在并行HDF5中创建可扩展数据集