Performance 如何将我的H2O预测快速转换为data.frame

Performance 如何将我的H2O预测快速转换为data.frame,performance,dataframe,h2o,Performance,Dataframe,H2o,我使用H2O,在一个大数据集上,800万行和10列。我使用H2O.randomForest训练我的randomForest。该模型训练良好,预测效果良好。现在我想把我的预测转换成data.frame。我这样做: A2=h2o.predict(m1,Tr15_h2o) pred2=as.data.frame(A2) 但它太慢了,需要永远。从H2o到data.frame或data.table的转换有没有更快的方法?我们已经看到,在导出到prediction dataframe或将其转换为其他类型时

我使用H2O,在一个大数据集上,800万行和10列。我使用H2O.randomForest训练我的randomForest。该模型训练良好,预测效果良好。现在我想把我的预测转换成data.frame。我这样做:

A2=h2o.predict(m1,Tr15_h2o)
pred2=as.data.frame(A2)

但它太慢了,需要永远。从H2o到data.frame或data.table的转换有没有更快的方法?

我们已经看到,在导出到prediction dataframe或将其转换为其他类型时,大型预测数据集会出现此问题,需要很长时间。我现在已经打开了以下JIRA来跟踪它:


是的,有一些新的选项可以使用data.table::fread来加速。键入h2o:::as.data.frame.H2OFrame以查看包含选项的少量R源代码或h2o发行说明。请同时尝试最新的fread,从昨天开始,它现在是平行的


一旦用户报告成功,我们可以默认打开默认设置。

以下是一些代码,演示如何在后端使用data.table软件包,以及我的macbook上的一些基准测试:

library(h2o)
h2o.init(nthreads = -1, max_mem_size = "16G")
hf <- h2o.createFrame(rows = 10000000)

options("h2o.use.data.table"=FALSE)  #no data.table
system.time(df <- as.data.frame(hf))
# user  system elapsed 
# 224.387  13.274 272.252

options("datatable.verbose"=TRUE)
options("h2o.use.data.table"=TRUE)  # use data.table
system.time(df2 <- as.data.frame(hf))
# user  system elapsed 
# 50.686   4.020  82.946

如果启用此选项,则可以在使用data.table时获得更详细的信息:options datatable.verbose=TRUE。

感谢您的快速响应。希望这个问题也能尽快解决如何在python中设置optionsdatatable.verbose=TRUE???