我需要传递一个列表作为我在pyspark中的某个UDF的参数。例如:
def cat(mine,mine2):
if mine is not None and mine2 is not None:
return "2_"+mine+"_"+mine2
udf_cat = UserDefinedFunction(cat, "string")
l = ["COLUMN1","COLUMN2"]
df = df.withColumn("NEW_COLUMN", udf_cat(l))
但我总是收到错误。
答案 0 :(得分:1)
过了一会儿,我发现我只需要使用字符' *'来传递列表。在它之前。例如:
df = df.withColumn("NEW_COLUMN", udf_cat(*l))
这样,它就会起作用。