sklearn.preprocessing 中的 Imputer

填补缺失值:sklearn.preprocessing.Imputer(missing_values=’NaN’, strategy=’mean’, axis=0, verbose=0, copy=True)

主要参数说明:

missing_values:缺失值,可以为整数或NaN(缺失值numpy.nan用字符串‘NaN’表示),默认为NaN

strategy:替换策略,字符串,默认用均值‘mean’替换

①若为mean时,用特征列的均值替换

②若为median时,用特征列的中位数替换

③若为most_frequent时,用特征列的众数替换

axis:指定轴数,默认axis=0代表列,axis=1代表行

copy:设置为True代表不在原数据集上修改,设置为False时,就地修改,存在如下情况时,即使设置为False时,也不会就地修改

①X不是浮点值数组

②X是稀疏且missing_values=0

③axis=0且X为CRS矩阵

④axis=1且X为CSC矩阵

statistics_属性:axis设置为0时,每个特征的填充值数组,axis=1时,报错,内容为:没有该属性

例如:
数据
sklearn.preprocessing 中的 Imputer_第1张图片
代码:

from sklearn.preprocessing import Imputer
# 策略选择用中位数代替
imputer = Imputer(strategy="median")
# 删除ocean_proximity这一列,因为中位数只对数字数据有用
housing_num = housing.drop("ocean_proximity", axis=1)
# fit数据
imputer.fit(housing_num)
# 输出各列数据的中位数数组
imputer.statistics_

输出:
sklearn.preprocessing 中的 Imputer_第2张图片

参考:https://blog.csdn.net/kancy110/article/details/75041923

你可能感兴趣的:(机器学习)