我正在寻找一种类似于熊猫中“应用”功能的方法。我试过了

my_H2Oframe.apply(lambda x: my_function(x), axis=1)


但这是行不通的。


ValueError:未实现:op 在H2OFrame中未绑定


我找到了this question。看来我们只能使用H2O已定义的那些功能。我认为必须有一种类似于apply函数的方法,因为这是一个常见的操作。有没有人有办法解决吗?

最佳答案

目前没有其他Apply类型方法。假设H2O套用方法与熊猫套用非常相似。的确,H2O的apply函数仅限于某些操作,例如加(+),减(-),除法等。如果您使用的是H2O没有的函数,则会得到上面的错误。

下面是一些示例,以尝试了解apply函数的工作方式(第一个获取列的均值,第二个返回布尔值的列):

h2oframe = h2o.import_file("http://h2o-public-test-data.s3.amazonaws.com/smalldata/prostate/prostate.csv")

h2oframe.apply(lambda x: x.mean(), axis=0)

h2oframe.apply(lambda x: x['PSA'] > x['VOL'],axis=1)


这是当前的文档:

apply(fun=None, axis=0):
    Apply a lambda expression to an H2OFrame.

    Parameters:
    fun – a lambda expression to be applied per row or per column.
    axis – 0 = apply to each column; 1 = apply to each row
    Returns:
    a new H2OFrame with the results of applying fun to the current frame.

07-24 09:53
查看更多