我在 R 中有一个数据框,我正在使用 as.h2o()
传递给 H2O。
dataset.h2o <- as.h2o(dataset,destination_frame = "dataset.h2o")
对数据框执行 str()
,我们可以看到 week_of_date 类的数据类型为 Date
$ primary_account_id : int 31 31 31 31 31 31 31 31 31 31 ...
$ week_of_date : Date, format: "2015-08-31" "2015-09-07" "2015-09-14" "2015-09-21" ...
但是,当在 H2O Flow 中查看时,它似乎被转换为称为时间的数据类型 - 其格式为
week_of_date 时间 0 0 0 0 1440943200000.0 1447592400000.0 1444480409625.8884 2013362534.5706
当我使用 as.data.frame 将数据带回 R 时
returned.dataset <- as.data.frame(dataset.h2o)
它以我无法理解的格式存储,因此无法解析
$ primary_account_id: int 31 31 698 1060 1060 1060 1060 1060 1060 1133 ...
$ week_of_date :Class 'POSIXct' num [1:194] 1442757600000 1446382800000 1446382800000 1442152800000 1442757600000 ...
您能否指出我如何在 R 和 H2O 之间实现更好的日期互操作性的方向?
谢谢!
最佳答案
这是 h2o 中的错误。 H2o 以毫秒为单位返回日期时间,而 R 需要秒。参见 jira issue 3434 .
同时您可以做的是重新编码日期列:
as.Date(structure(returned.dataset$week_of_date/1000, class = c("POSIXct", "POSIXt")))
关于r - 如何解释 H2O 的时间数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40275946/