Python Pyspark:需要显示数据帧中每列的null/empty值计数

Python Pyspark:需要显示数据帧中每列的null/empty值计数,python,apache-spark,pyspark,Python,Apache Spark,Pyspark,我有一个spark数据帧,需要为每列计算null/empty值。我需要显示输出中的所有列。我在网上查了一下,发现了一些“类似的问题”,但这些问题的解决方案完全出乎我的意料,这就是我在这里发布个人帮助的原因 这是我的代码,我知道这部分的难题 from pyspark.sql import * sf.isnull() 运行它之后,我收到的错误是:AttributeError:'DataFrame'对象没有属性'isnull' 有趣的是,我对熊猫做了同样的练习,并使用了df.isna().sum(

我有一个spark数据帧,需要为每列计算null/empty值。我需要显示输出中的所有列。我在网上查了一下,发现了一些“类似的问题”,但这些问题的解决方案完全出乎我的意料,这就是我在这里发布个人帮助的原因

这是我的代码,我知道这部分的难题

from pyspark.sql import *

sf.isnull()
运行它之后,我收到的错误是:AttributeError:'DataFrame'对象没有属性'isnull'


有趣的是,我对熊猫做了同样的练习,并使用了
df.isna().sum()
,效果非常好。pyspark缺少什么?

您可以执行以下操作,只需确保您的df是Spark数据帧

from pyspark.sql.functions import col, when

df.select(*(count(when(col(c).isNull(), c)).alias(c) for c in df.columns)).show()

你确定数据帧(在pyspark.syl中,而不是pandas中)有这样一种方法吗:这就是我困惑的地方,我不知道。我点击了你的链接,看到了
pyspark.sql.Column.isNull
,然后我更进一步,作为一个例子,正在使用它的show
filter
。我甚至不知道那是什么。但是
不是
数据框
:“列:数据框中的列表达式”?已经有答案了这回答了你的问题吗?