在尝试过滤Pyspark中的数据帧时遇到一个问题,我的代码可以独立运行,但是当移到群集时它将停止工作。
我正在使用的代码如下:
def ttst_filter(df, keys):
return df.filter(
reduce(
or_,
((col('col_1') == key[0]) & (col('col_2') == key[1]) for key in keys)
)
)
此功能具有数据框和键列表,如下所示:
[
[1, 2],
[2, 3],
[4, 5]
]
不在群集上时,如果col_1匹配第一个索引,而col_2匹配第二个索引,则对于返回行的任何列表项,该功能将按预期工作。
有人将我移到群集后为什么不起作用?