[英]How to get the numeric value of missing values in a PySpark column?
我正在使用 PySpark 处理 OpenFoodFacts 数据集。 有很多列完全由缺失值组成,我想删除这些列。 我一直在寻找方法来检索每列缺失值的数量,但它们以表格格式显示,而不是实际给我 null 总值的数值。
以下代码显示列中缺失值的数量,但以表格格式显示:
from pyspark.sql.functions import col, isnan, when, count
data.select([count(when(isnan("column") | col("column").isNull(), "column")]).show()
我尝试了以下代码:
for c in data.columns:
if(data.select([count(when(isnan(c) | col(c).isNull(), c)]) == data.count()):
data = data.drop(c)
data.show()
for c in data.columns:
if(data.filter(data[c].isNull()).count() == data.count()):
data = data.drop(c)
data.show()
有没有办法只获得号码? 谢谢
如果您需要数字而不是以表格格式显示,则需要使用.collect()
,即:
list_of_values = data.select([count(when(isnan("column") | col("column").isNull(), "column")]).collect()
你得到的是一个Row的列表,里面包含了表中的所有信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.