pyspark之数据处理学习【缺失值处理】(2)

在我们拿到的数据集中常常会存在某个属性的数值缺失这种情况。面对这种情况有两种办法:

 

  • 删除这种数据(如果你的数据负担得起)
  • 对缺失值进行填充处理(有如下方法)
    • 如果是离散布尔型,可以简单地添加第三个类别--missing,将其转化为一个分类变量
    • 对于数值类型的数据,可以填充任何平均数、中值或者一些其他预定义的值。

 

 

from pyspark.sql import SparkSession

spark = SparkSession.builder.appName("dataDeal").getOrCreate()
df_miss = spark.createDataFrame([
    (1, 143.5, 5.6, 28,   'M',  100000),
    (2, 167.2, 5.4, 45,   'M',  None),
    (3, None , 5.2, None, None, None),
    (4, 144.5, 5.9, 33,   'M',  None),
    (5, 133.2, 5.7, 54,   'F',  None),
    (6, 124.1, 5.2, None, 'F',  None),
    (7, 129.2, 5.3, 42,   'M',  76000)
    ], ['id', 'weight', 'height', 'age', 'gender', 'income'])

根据上面的数据,我们可以直观看出:

 

 

你可能感兴趣的:(spark,pyspark)