数据处理————缺失值处理

学习kaggle输出处理整个总结,以下图、代码都来自于kaggle 的 micro-course 

 

缺失值处理 共有三种方法:

 

  1.     丢弃缺失值所在的行(当缺失值较多时,影响比较大,不常用此方法)

 

            如下代码,找到任意含有缺失值的行,凡是含有确实值都从DataFrame中去掉。下面还有使用Random Forest 训练后的Mean Absolute  Error(平均绝对值误差), 可以和后面的三个方法做对比。

  1. 插补法( Imputation)

            插补法, 使用特征列的均值、众数和众位数 等填充缺失值。  

            插补法还有使用回归插补、热卡插补法、多重插补法,但是一般均值、众数和众位数 就能表现的很好了。

           

            如下例子, 使用 scipy-learn的SimpleImputer 来均值 填充,  如下也给了Mean Absolute  Error

 

 

  1. 插补法的扩充

 

            对含有缺失值的列,增加一列(bool类型的列, 判断当前列值是否是缺失值),如下图形式:

                增加一列,判断当前列是否是缺失值, 由三种方法对比, 插补法(Imputation)Mean  Absolute Error最小,表现较好。