直接将.rds文件导入h2o框架

时间:2018-03-08 16:01:35

标签: r dataframe datatable dplyr h2o

我保存了一个大的.rds文件,并尝试使用某些功能将.rds文件直接导入h2o框架,因为我无法在R enviornment中读取该文件然后使用要转换的as.h2o函数。 我正在寻找一些快速有效的方法来处理它。

我的尝试:

  1. 我尝试读取该文件,然后将其转换为h2o框架。但是,这是一个耗时的过程。
  2. 我尝试以.csv格式保存文件,并将h2o.import()parse=T一起使用。 由于内存限制,我无法保存完整的数据帧。
  3. 请建议我采取任何有效的方式。

    任何建议都将受到高度赞赏。

1 个答案:

答案 0 :(得分:3)

R中的本机读/写功能效率不高,因此我建议使用 data.table 。以下两个选项都以某种方式使用 data.table

首先,我建议您尝试以下操作:安装 data.table 包并加载 h2o 库后,设置options("h2o.use.data.table"=TRUE) 。这样做的目的是确保as.h2o()使用 data.table 来从R data.frame转换为H2O Frame。有关as.h2o()如何工作的注意事项 - 它将文件从R写入磁盘,然后使用h2o.importFile(),H2O的并行文件读取器将其再次读回H2O。

还有另一个选项,实际上是相同的,尽管你的RAM不需要同时存储两个数据副本(一个在R中,一个在H2O中),所以如果你的RAM可能更有效你真的很有资源。

将文件另存为CSV或压缩CSV。如果您在将数据框作为CSV保存到磁盘时遇到问题,那么您应确保使用高效的文件编写器,如data.table::fwrite()。将文件放在磁盘上后,使用h2o.importFile()将其直接读入H2O。