pyspark中包含空值的行数

时间:2018-08-08 16:08:23

标签: python-3.x pyspark

例如考虑一个pyspark数据框

columns = ['id', 'dogs', 'cats']
vals = [(1, 2, 0),(None, 0, 1),(5,None,9)]
df=spark.createDataFrame(vals,columns)
df.show()
+----+----+----+
|  id|dogs|cats|
+----+----+----+
|   1|   2|   0|
|null|   0|   1|
|   5|null|   9|
+----+----+----+

我想编写一个代码,该代码返回2作为包含空值的行数

1 个答案:

答案 0 :(得分:1)

df.subtract(df.dropna()).count()

df.dropna()返回一个新的数据帧,其中删除了任何包含null的行;然后从原始数据帧中减去此数据帧(相当于SQL EXCEPT),以仅保留其中包含空值的行。

这显然不像只看一个列那样漂亮,但这是当涉及到所有列时我所知道的最简单的方法。