如何将其他参数传递给pyspark中用户定义的方法用于过滤方法?

时间:2015-12-04 11:40:39

标签: python apache-spark pyspark

我在python中使用spark,我有一个过滤器约束,如下所示:

my_rdd.filter(my_func)

其中my_func是我写的一个方法,用于根据我自己的逻辑过滤rdd项目。我已经将my_func定义如下:

def my_func(my_item):

{
...
}

现在,我想将另一个单独的参数传递给my_func,除了进入它的项目。我怎样才能做到这一点?我知道my_item将引用来自my_rdd的一个项目,如何将我自己的参数(比方说my_param)作为my_func的附加参数传递?

1 个答案:

答案 0 :(得分:8)

使用以下lambda语法并使用额外参数修改my_func:

my_rdd.filter(lambda row: my_func(row,extra_parameter))