pyspark 有空安全比较运算符吗?

Dyl*_*ees 5 python apache-spark pyspark

当尝试创建布尔列时,如果其他两列相等则为 True,否则为 False,我注意到 Spark 中的 Null == Null = False。

df.withColumn('newCol', F.when(F.col('x')==F.col('y'), True).otherwise(False))
Run Code Online (Sandbox Code Playgroud)

这个:https: //spark.apache.org/docs/3.0.0-preview/sql-ref-null-semantics.html 建议如果我使用 SQL 语法,我可以使用 <=>,但我希望坚持使用pyspark sql api 如果可以的话。

df.withColumn('newCol', F.when(F.col('x')<=>F.col('y'), True).otherwise(False))
Run Code Online (Sandbox Code Playgroud)

似乎不起作用。

有没有人有什么建议?