1

我有一个外部应用程序(非 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,则此方法有效,但在数据较大时无效。如果我可以先创建 DataSet,我可以在切片中创建数据,因此可以将其写入文件。

为了尝试创建数据集,我做

file <- h5file("test.h5", 'w')
createDataSet(file, 'data', NA, 'double', c(8,8,1000000))

然而,R 拒绝这种说法

无法为签名“H5File”、“character”、“numeric”、“character”、“numeric”、“missing”、“missing”、“missing”找到函数“createDataSet”的继承方法

文档中的调用签名表明“维度”不是一个向量,而是一个整数——也许是指定维度的数量。我已经尝试过其他调用签名并得到不匹配——也许 H5File 不是 CommonFG 类型,尽管 CommonFG 是 H5File 的父类。

4

0 回答 0