我正在处理一个巨大的H2OFrame
(~150gb,~2 亿行),我需要对其进行一些操作。更具体地说:我必须使用框架的ip
列来查找每个 IP 的位置/城市名称,并将此信息添加到框架的每一行。
由于框架的巨大尺寸,将框架转换为普通的 python 对象并在本地操作它不是一种选择。所以我希望我能做的是使用我的 H2O 集群city_names
使用原始框架的ip
列创建一个新的 H2OFrame,然后合并两个框架。
我的问题有点类似于这里提出的问题,我从这个问题的答案中收集到的是,在 H2O 中没有办法对框架的每一行进行复杂的操作。真的是这样吗?H2OFrame
的apply
函数毕竟只接受没有自定义方法的 lambda。
我想到的一个选择是使用Spark/Sparkling Water
这种数据操作,然后将 spark 帧转换为 H2OFrame 以进行机器学习操作。但是,如果可能的话,我宁愿避免这种情况,只使用 H2O,尤其是因为这种转换会产生开销。
所以我想归结为:有没有办法只使用 H2O 来进行这种操作?如果没有,是否有另一种选择可以做到这一点而无需更改我的集群架构(即不必将我的 H2O 集群变成苏打水集群?)