笔记4.2SimpleImputer缺失值处理

机器学习从入门到入职--用sklearn与Keras搭建人工智能模型

第四章4.1根据样本之间关联关系,及数据的行和列,用SimpleImputer方法进行缺失值处理,策略有均值插补、中位数插补和高频数插补。例子如下:

#引用相应的库,numpy用于生成缺失值,sklearn.impute库中的simpleimputer方法用预处理缺失值
import Numpy as np
from sklearn.impute import SimpleImputer
#初始化缺失值处理器,指定缺失值参数missing_values,默认np.nan
#以及缺失值补全策略参数strategy,采用均值补全
#另外还有中位数(median)、常数(constant)、最高频数(most_frequent)
imp_mean=SimpleImputer(missing_values=np.nan,strategy='mean')
imp_median=SimpleImputer(missing_values=np.nan,strategy='median')
imp_constant=SimpleImputer(missing_values=np.nan,strategy='constant')
imp_most_frequent=SimpleImputer(missing_values=np.nan,strategy='most_frequent')
X=[[13,22],[5,3],[7,np.nan],[np.nan,5],[3,7]]
#执行缺失值处理的步骤,在fit原始数据之后对其进行转换
imp_mean.fit(X)
imp_median.fit(X)
imp_constant.fit(X)
imp_most_frequent.fit(X)
print(u"均值处理结果如下")
print(imp_mean.transform(X))
print(u"中位数处理结果如下")
print(imp_median.transform(X))
print(u"最高频处理结果如下")
print(imp_most_frequent.transform(X))

输出如下

均值处理结果如下:
[[13. 22.][5. 3.][7. 9.25][7. 5.][3. 5.]]
中位数处理结果如下:
[[13. 22.][5. 3.][7. 6.][6. 5.][3. 7.]]
常数处理结果如下:
[[13. 22.][5. 3.][7. 0.][0. 5.][3. 7.]]
最高频处理结果如下:
[[13. 22.][5. 3.][7. 3.][3. 5.][3. 7.]]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值