python sklearn库中的缺失值填充

今天小萌新复习数据挖掘课程的知识点,当看到缺失值填充(imputation of missing values)部分,被sklearn库中的transform函数搞晕了。看了几篇前辈们的博客,来这里总结一下。请大家指正。

缺失值填充(imputation of missing values)

原始数据中会有一些缺失的属性值,一般人都会选择自动填充。

import numpy as np
from sklearn.impute import SimpleImputer
imp = SimpleImputer(missing_values=np.nan, strategy='mean')
imp.fit([[1, 2], [np.nan, 3], [7, 6]])
#使用train set训练出一个缺失值处理模型

SimpleImputer类用来单一属性缺失值填充。这里的二维矩阵[[1, 2], [np.nan, 3], [7, 6]]是train set,学习完成之后就可以把学习到的填充规则应用到test set上面即可。

X = [[np.nan, 2], [6, np.nan], [7, 6]]
print(imp.transform(X))

此时,X是test set。

transform函数

transform函数是数据标准化函数。它保证每个维度的特征数据方差为1,均值为0(正态分布),使得预测结果不会被某些维度过大的特征值而主导。

参考

[1]https://blog.csdn.net/quiet_girl/article/details/72517053?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param
[2]https://www.cnblogs.com/chaosimple/p/4153158.html
[3]https://blog.csdn.net/qq_30982323/article/details/97135745

你可能感兴趣的:(数据处理,python,机器学习,数据挖掘)