嗨,非常基本的问题,但我是Pyspark的新手。我希望我的函数根据输入参数返回不同的列,但不知道如何做到这一点。在Python中对应的是:
if model='a': return df[[colA,colB]] if model ='b': return df[[colA,colB,colC]]
Thanks in advance
Pyspark等效的方法是使用select来获取所需的列-
if model = 'a':
return df.select(*[colA,colB])
elif model = 'b':
return df.select(*[colA,colB,colC])
您可以在pyspark中实现类似于python的if else逻辑。你也可以在python中使用if elif else等。包括while和for循环,但这完全取决于你的需求和你想用逻辑做什么。
if res_flag=="Model 1":
return df.select('colA','colB')
elif res_flag=="Model 1":
return df.select('colA','colB','colc')
else:
return df