我有一个外部应用程序(非R),其输入是包含密集数据立方体的HDF5文件。我希望在R中生成数据。
在R中创建HDF5数据集的常规方法如下:
`
library(h5)
data <- numeric( 8*8*1000000)
dim(data) <- c(8,8,1000000)
file <- h5file("test.h5", 'w')
file['data'] <- data`
如果有足够的内存来创建data
,但是当数据很大时,则无效。我可以在切片中创建数据,因此可以将其写入文件,如果我可以先创建数据集。
为了尝试创建数据集,我做
file <- h5file("test.h5", 'w')
createDataSet(file, 'data', NA, 'double', c(8,8,1000000))
然而,R拒绝这种说法
无法找到函数'createDataSet'的继承方法 签名'“H5File”,“character”,“numeric”,“character”,“numeric”, “失踪”,“失踪”,“失踪”'
documentation中的调用签名表明“维度”不是向量,而是整数 - 可能指定维度的数量。我已尝试过其他调用签名并导致不匹配 - 也许H5File不是CommonFG类型,尽管CommonFG是H5File的父类。