sklearn-4.3.prepreocessing
来源:互联网 发布:todolist mac 破解版 编辑:程序博客网 时间:2024/05/29 10:05
4.3数据预处理
4.3.1
如果一个特征的方差比其他特征的方差大得多,要统一到均值为0方差为1,用scale函数:
scale:把特征们统一到均值为0方差为1
StandardScaler:记下scale的处理方式,有选择的沿用到其它数据如testing set中
4.3.1.1
MinMaxScaler:将数据等比例缩到[0,1]上,可以在test集上沿用此比例,会超出[0,1]范围
为保证稀疏矩阵的0值
MaxAbsScaler:将数据等比例缩到[-1,1]上,以绝对值最大的值和0值不动
4.3.1.2
MaxAbsScaler 和 maxabs_scale用来处理稀疏矩阵,
scale 和 StandardScaler可以设定with_mean=False来处理稀疏矩阵
RobustScaler不能用于稀疏矩阵
scalers接收以行压缩的稀疏矩阵(CSR)和以列压缩的稀疏矩阵(CSC),其他形式会转换为以上两种,建议输入CSR或CSC以减少内存消耗
4.3.1.3
如果存在异常值
robust_scale 和 RobustScaler:可以更好的给出均值和方差而不受异常值影响
有时候仅均值和缩放是不够的,下游模型可能要求特征们线性无关:
sklearn.decomposition.PCA 或 sklearn.decomposition.RandomizedPCA参数设置whiten=True去相关
4.3.1.4
KernelCenterer:可以对用核处理的矩阵接一步使均值为0的操作
4.3.2
normalize and Normalizer
要使得每个处理后样本的p-范数(l1-norm,l2-norm)等于1。
p-范数的计算公式:||X||p=(|x1|^p+|x2|^p+…+|xn|^p)^1/p
可用于稀疏矩阵,建议输入按行列压缩的稀疏矩阵以节省内存
4.3.3
Binarizer
数值通过 Binarizer 被替换成0,1两个值
与StandanScaler和Normalizer类相同,在API转换器不必要时,可以用函数binarize代替
可用于稀疏矩阵,建议输入按行列压缩的稀疏矩阵以节省内存
4.3.4
OneHotEncoder
对于比如[男/女,1/2/3班],[女,3班]=[1,3]的表示方式会导致班级1、2、3之间有1<2<3的数值关系,OneHotEncoder用来取消这一点,它将其转换[0,1,0,0,1],前2个向量表示女,后3个向量表示三班
4.3.5
Imputer
处理缺失值,用均值、中值、众数替换
4.3.6
PolynomialFeatures
从 (X_1, X_2) 到 (1, X_1, X_2, X_1^2, X_1X_2, X_2^2)
import numpy as np
from sklearn.preprocessing import PolynomialFeatures
X = np.arange(6).reshape(3, 2)
X
array([[0, 1],
[2, 3],
[4, 5]])
poly = PolynomialFeatures(2)
poly.fit_transform(X)
array([[ 1., 0., 1., 0., 0., 1.],
[ 1., 2., 3., 4., 6., 9.],
[ 1., 4., 5., 16., 20., 25.]])
如果
poly = PolynomialFeatures(degree=2, interaction_only=True)
则从 (X_1, X_2) 到 (1, X_1, X_2, X_1X_2)
4.3.7
你也可以自定义转换,比如x到log(x)
FunctionTransformer
http://scikit-learn.org/stable/modules/preprocessing.html#preprocessing-data
- sklearn-4.3.prepreocessing
- Sklearn
- sklearn
- sklearn
- Sklearn
- 【sklearn】svm
- sklearn BaseEstimator
- sklearn preprocessing
- sklearn pipline
- Sklearn Reading1
- Sklearn Reading2
- sklearn PCA
- sklearn GMM
- sklearn MeanShift
- sklearn DBSCAN
- 安装sklearn
- sklearn简介
- sklearn 安装
- Number lengths FZU
- const型
- 基于Spark的用户行为路径分析的产品化实践
- simhash的python实现
- lua redis 发布订阅
- sklearn-4.3.prepreocessing
- 20170323-leetcode-089-Gray Code
- opencv处理的图像加载到图片控件
- lua 协同程序
- 从建水厂看简单工厂、工厂方法模式和抽象工厂之间的区别
- 霍夫曼编码的应用练习
- 第十次ccf 分蛋糕
- 关于Mvean的安装问题
- openlayers3应用(一):显示百度在线地图