sklearn——数据数据预处理
一、数据的标准化、归一化、正则化 1、标准化 将数据转化为均值为0方差为1的数据,即标准正态分布。标准化可以规范数据,但不适用于稀疏数据,因为会破坏其数据结果。标准化的过程为两步:去均值的中心化(均值变为0);方差的规模化(方差变为1)。即每一列减去该列的均值再除以该列的方差。 在分类、聚类算法中,需要使用距离来度量相似性的时候、或者使用PCA技术进行降维的时候,StandardScaler表现更好。 对应函数: sklearn.preprocessing.scale(X, axis=0, with_mean=True, with_std=True, copy=True) x:需要标准化标准化的数据。 axis:需要标准化的方向,0为列,1为行。 with_mean:是否去均值的中心化,默认为True。 with_std:是否方差规模化,默认为True。 copy:是否要copy数据。 代码示例: import numpy as np from sklearn.preprocessing import scale a =np.random.normal(4,5,[5,2]) # 创造数据 a_s=scale(a) # 标准化 print ( ' a:\n ' ,a) print ( ' \na_s:\n ' ,a_s) print ( ' \na_s的均值: '