我使用的是spark2.1,脚本是pyspark。请帮帮我,我被困在这里了。
问题陈述:基于多列的条件创建新列
输入 dataframe
在下面
FLG1 FLG2 FLG3
T F T
F T T
T T F
现在我需要创建一个新列作为flg,我的条件是 FLG1==T&&(FLG2==F||FLG2==T)
我的 FLG
必须是 T
其他 F
上述考虑 dataframe
作为 DF
下面是我尝试过的代码片段
DF.withColumn("FLG",DF.select(when(FLG1=='T' and (FLG2=='F' or FLG2=='T','F').otherwise('T'))).show()
没有工作我得到的名字还没有定义
请帮助我跨过这个障碍
1条答案
按热度按时间biswetbf1#
试试下面的方法,应该可以