当X不在Y中时,Pyspark F

当X不在Y中时,Pyspark F,pyspark,pyspark-sql,pyspark-dataframes,.when,Pyspark,Pyspark Sql,Pyspark Dataframes,.when,大家好,我有个问题。我必须提出一个否定的条件,但我不知道该怎么做。 Df.withColumn(“X”,F.when(F.col(ABC).isn(['A']),F.lit(['B'])。否则(F.lit(“”) 这是如果我想要A中的ABC,但如何不在A中写入?我尝试==False,但软件告诉我它不正确。 提前Thx在when子句中使用~选项 df.withColumn(“X”, F.when(~F.col(ABC).isin(['A']),F.lit(['B']).otherwise(F.li

大家好,我有个问题。我必须提出一个否定的条件,但我不知道该怎么做。 Df.withColumn(“X”,F.when(F.col(ABC).isn(['A']),F.lit(['B'])。否则(F.lit(“”) 这是如果我想要A中的ABC,但如何不在A中写入?我尝试==False,但软件告诉我它不正确。
提前Thx

在when子句中使用
~
选项

df.withColumn(“X”, F.when(~F.col(ABC).isin(['A']),F.lit(['B']).otherwise(F.lit(''))
示例:

df.show()
#+---+---+---+
#|  a|  b|  c|
#+---+---+---+
#|  a|123|  b|
#|  c|123|  d|
#+---+---+---+

#in 
df.filter(col("a").isin(['a'])).show()
#or
df.filter((col("a").isin(['a'])) == True).show()

#+---+---+---+
#|  a|  b|  c|
#+---+---+---+
#|  a|123|  b|
#+---+---+---+

#not in 
df.filter(~col("a").isin(['a'])).show()
#or
df.filter((col("a").isin(['a'])) == False).show()

#+---+---+---+
#|  a|  b|  c|
#+---+---+---+
#|  c|123|  d|
#+---+---+---+