如何将稀疏矩阵变为H2O?

Sno*_*ake 7 r sparse-matrix h2o

我试图将一个稀疏的矩阵变成H2O,我想知道这是否可能.假设我们有以下内容:

test <- Matrix(c(1,0,0,1,1,1,1,0,1), nrow = 3, sparse = TRUE)
Run Code Online (Sandbox Code Playgroud)

假设我的当地H2O是localH2O,我似乎无法做到以下几点:

as.h2o(test)
Run Code Online (Sandbox Code Playgroud)

它给出了错误:cannot coerce class "structure("dgCMatrix", package = "Matrix")" to a data.frame.这看起来很合乎逻辑,但假设测试太大以至于我无法将其转换为数据帧,我想如何将其加载到H2O中?使用稀疏矩阵表示它只有500MB左右.

如何将稀疏矩阵加载到H2O中?

小智 8

将存储在R存储器中的数据传输到H2O的存储器是很麻烦的,主要有两个原因:R执行文件POST以将数据流式传输到H2O,1)不利用H2O的并行读取器,2)限制您的数据存在于R.

相反,使用R中的h2o.importFile方法来使用H2O的并行读取器.您的数据可以在任何地方生活:HDFS,S3,常规文件系统......

H2O运行SVMLight阅读器,因此建议以svmlight格式从R保存稀疏矩阵.

希望这可以帮助!