Spark統計DataFrame每列的缺失率

// scala 版本

import org.apache.spark.sql.functions.col

// tax_info 爲一個dataframe

val columns=tax_info.columns
val cnt=tax_info.count()

// 統計每列的缺失記錄數
val missing_cnt=columns.map(x=>data.select(col(x)).where(col(x).isNull).count)

// 統計每列的缺失率,並保留4位小數
val missing_rate=columns.map(x=>((data.select(col(x)).where(col(x).isNull).count.toDouble/cnt).formatted("%.4f")))

// 將列名和缺失率拼接起來,組成一個dataframe
val  
result=sc.parallelize(missing_cnt.zip(columns)).toDF("missing_rate","column_name")

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章