在R中管理H5Pset_布局

在R中管理H5Pset_布局,r,hdf5,bioconductor,R,Hdf5,Bioconductor,我正在使用R中的4.6 Gb data.frame,我想将其保存为hdf5格式。 这就是我正在做的: > print(object.size(A), units = "Gb") 4.6 Gb > library(rhdf5) > hd5_file="/home/usert/sim/sim.h5" > h5createFile( hd5_file ) [1] TRUE h5write(A, hd5_file, "A") 我收到此错误消息: HDF5-DIA

我正在使用R中的4.6 Gb data.frame,我想将其保存为hdf5格式。 这就是我正在做的:

> print(object.size(A), units = "Gb")
    4.6 Gb

> library(rhdf5) 
> hd5_file="/home/usert/sim/sim.h5"
> h5createFile( hd5_file )
[1] TRUE 

h5write(A, hd5_file, "A")
我收到此错误消息:

HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dcreate2()中的H5D.c行170:无法创建数据集
专业:数据集
次要:无法初始化对象
#001:H5D_create_named()中的H5Dint.c行431:无法创建并链接到数据集
专业:数据集
次要:无法初始化对象
#002:H5L\u link\u object()中的H5L.c行1640:无法创建指向对象的新链接
专业:链接
次要:无法初始化对象
#003:H5L\u create\u real()中的H5L.c行1884:无法插入链接
专业:符号表
次要:无法插入对象
#004:H5G_遍历()中的H5Gtraverse.c行905:内部路径遍历失败
专业:符号表
次要:未找到对象
#005:H5G_traverse_real()中的H5Gtraverse.c行688:遍历运算符失败
专业:符号表
次要:回调失败
#006:H5L_link_cb()中的H5L.c行1687:无法创建对象
主要:对象标题
次要:无法初始化对象
#007:H5O_obj_create()中的H5O.c行3013:无法打开对象
主要:对象标题
小调:无法打开对象
#008:H5O_dset_create()中的H5Doh.c行295:无法创建数据集
专业:数据集
次要:无法初始化对象
#009:H5D_create()中的H5Dint.c行1035:无法构造布局信息
专业:数据集
次要:无法初始化对象
#010:H5D_chunk_构造()中的H5Dchunk.c第443行:块大小必须小于4GB
专业:数据集
次要:无法初始化对象
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
major:例程的参数无效[在此处输入链接说明][1]
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dwrite()中的H5Dio.c行228:不是数据集
主:例程的参数无效
小调:不合适的类型
HDF5-DIAG:在HDF5(1.8.7)线程0中检测到错误:
#000:H5Dclose()中的H5D.c行391:不是数据集
主:例程的参数无效
小调:不合适的类型
而且(我想)我应该设置一个不同于H5D_COMPACT的存储选项,使用本文和l


有没有办法使用R中的H5Pset_布局?

你可能会更幸运地问我,虽然我使用的数据集要小得多,但我被抛出了相同的错误。你找到解决办法了吗?
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5D.c line 170 in H5Dcreate2(): unable to create dataset
    major: Dataset
    minor: Unable to initialize object
  #001: H5Dint.c line 431 in H5D_create_named(): unable to create and link to dataset
    major: Dataset
    minor: Unable to initialize object
  #002: H5L.c line 1640 in H5L_link_object(): unable to create new link to object
    major: Links
    minor: Unable to initialize object
  #003: H5L.c line 1884 in H5L_create_real(): can't insert link
    major: Symbol table
    minor: Unable to insert object
  #004: H5Gtraverse.c line 905 in H5G_traverse(): internal path traversal failed
    major: Symbol table
    minor: Object not found
  #005: H5Gtraverse.c line 688 in H5G_traverse_real(): traversal operator failed
    major: Symbol table
    minor: Callback failed
  #006: H5L.c line 1687 in H5L_link_cb(): unable to create object
    major: Object header
    minor: Unable to initialize object
  #007: H5O.c line 3013 in H5O_obj_create(): unable to open object
    major: Object header
    minor: Can't open object
  #008: H5Doh.c line 295 in H5O_dset_create(): unable to create dataset
    major: Dataset
    minor: Unable to initialize object
  #009: H5Dint.c line 1035 in H5D_create(): unable to construct layout information
    major: Dataset
    minor: Unable to initialize object
  #010: H5Dchunk.c line 443 in H5D_chunk_construct(): chunk size must be < 4GB
    major: Dataset
    minor: Unable to initialize object
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine[enter link description here][1]
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5Dio.c line 228 in H5Dwrite(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
  #000: H5D.c line 391 in H5Dclose(): not a dataset
    major: Invalid arguments to routine
    minor: Inappropriate type