如何过滤 pyspark 数据框中任何列为空的行

Jul*_*ier 3 null filter dataframe pyspark

它必须已经在 stackoverflow 上的某个地方,但我只是在寻找方法来过滤 pyspark 数据帧的行,其中 1 个特定列为空,而不是任何列为空。

import pandas as pd
import pyspark.sql.functions as f
my_dict = {"column1":list(range(100)),"column2":["a","b","c",None]*25,"column3":["a","b","c","d",None]*20}
my_pandas_df = pd.DataFrame(my_dict)

sparkDf = spark.createDataFrame(my_pandas_df)
sparkDf.show(5)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我试图在数据帧的任何列上包含任何具有空值的行,基本上与此相反:

sparkDf.na.drop()
Run Code Online (Sandbox Code Playgroud)

ank*_*_91 6

用于包含具有任何列的行null

sparkDf.filter(F.greatest(*[F.col(i).isNull() for i in sparkDf.columns])).show(5)
Run Code Online (Sandbox Code Playgroud)

为了排除相同的:

sparkDf.na.drop(how='any').show(5)
Run Code Online (Sandbox Code Playgroud)