缺失数据意味着我们的数据集可能是不完整的,之前的例子中
德国的缺了薪水,西班牙的缺了年龄。对于缺失的数据最简单的处理方法就是删除这两行数据,但是这样的话可能会遗失重要的信息,所以要采取一个更好的方法,最常用的方法就是,取这一列的平均值,或者是最常见的值来对缺失的数据进行补充。
我们用工具来完成这个过程
from sklearn.preprocessing import Imputer
sklearn是数据挖掘和数据分析的标准库,preprocessing是数据预处理的工具,Imputer是用于处理数据缺失,里面包含了许多处理缺失数据的策略
Imputer第一个参数missing_values对应缺失数据,dafault = "NaN",第二个参数strategy,表示使用哪一种策略来处理缺失数据,default="mean"(平均值),或者是median中位数,most_frequent出现次数最多的,第三个参数axis表示取行平均值还是列平均值。
imputer = Imputer(missing_values = 'NaN', strategy = 'mean', axis = 0)
然后使用数据来拟合Imputer对象,先拟合第二列和第三列
imputer = imputer.fit(X[:, 1:3])
X[:, 1:3] = imputer.transform(X[:, 1:3)
可以看到结果