pyspark 如何在多个带非条件的列上使用筛选条件

r1zhe5dt  于 2023-04-19  发布在  Spark
关注(0)|答案(1)|浏览(170)

我的数据集看起来像这样:

我正在使用这个过滤器:

df = df.filter(trim(col("AGE"))!="" & trim(col("PHONE"))!="")

我得到一个空的数据框,我想要的数据没有记录具有名称=G3
任何帮助都很感激。

uubf1zoe

uubf1zoe1#

请尝试使用下面的过滤:-

df.filter(~((col('AGE').isNotNull()) & (col('PHONE').isNotNull()))).show()

df.filter(~((col('AGE') != lit(None)) & (col('PHONE') != lit(None)))).show()

请注意两个条件之间用&运算符分隔的附加圆括号。还有一组圆括号表示~(NOT运算符)

相关问题