如何将其他参数传递给pyspark中用户定义的方法以进行过滤方法?
How to pass additional parameters to user-defined methods in pyspark for filter method?
我将 spark 与 python 一起使用,并且我有如下过滤器约束:
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?
使用以下 lambda 语法并使用额外参数修改您的 my_func:
my_rdd.filter(lambda row: my_func(row,extra_parameter))
我将 spark 与 python 一起使用,并且我有如下过滤器约束:
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?
使用以下 lambda 语法并使用额外参数修改您的 my_func:
my_rdd.filter(lambda row: my_func(row,extra_parameter))