文中的文本及图片来自互联网,仅作学习培训、沟通交流应用,不具备一切商业行为,如有什么问题请立即在线留言以作解决 。
下列文章内容来自数据杂论,创作者:Wpc7113
Python 数据剖析新手入门实例解读
https://www.bilibili.com/video/BV18f4y1i7q9/
1.标准化:去平均值 ,方差产业化
Standardization标准化:将特点数据的遍布调节成规范标准正态分布,也叫伽马分布,也就是促使数据的平均值为0 ,方差为1.
标准化的缘故取决于假如一些特点的方差过大,则会核心目标函数进而使参数估计器没法恰当地去学习别的特点。
标准化的全过程为二步:去平均值的去中心化(平均值变成0);方差的产业化(方差变成1)。
from sklearn import preprocessing from sklearn.datasets import load_iris iris = load_iris() X, y = iris.data, iris.target '''规范变换''' scaler = preprocessing.StandardScaler().fit(X) x_scaler=scaler.transform(X)
2. 最少-较大 规范性
最少-较大 规范性对初始数据开展线形变换,变换到[0,1]区段(还可以是别的固定不动最少最高值的区段)
min_max_scaler = preprocessing.MinMaxScaler()
x_train_minmax = min_max_scaler.fit_transform(X)
3.MaxAbsScaler
max_abs_scaler = preprocessing.MaxAbsScaler()
x_train_maxabs = max_abs_scaler.fit_transform(X)
4.RobustScaler:含有outlier的数据的标准化
transformer = preprocessing.RobustScaler().fit(X)
x_robust_scaler=transformer.transform(X)
5.QuantileTransformer 分位数变换
quantile_transformer = preprocessing.QuantileTransformer(random_state=0)
X_train_trans = quantile_transformer.fit_transform(X)
6.Box-Cox
Box-Cox变换是Box和Cox在1964年明确提出的一种理论幂变换方式 ,是统计分析模型中常见的一种数据变换,用以持续的回应自变量不符合标准正态分布的状况 。Box-Cox变换以后,能够一定水平上减少不能观察的出现偏差的原因和预测分析自变量的关联性。Box-Cox变换的主要特点是导入一个主要参数 ,根据数据自身可能该主要参数从而明确应采用的数据变换方式 ,Box-Cox变换能够显著地改进数据的正态性 、对称和方差相同性,对很多具体数据全是切实可行。转变方法以下:
pt = preprocessing.PowerTransformer(method='box-cox', standardize=False) pt.fit_transform(X)
7.规范性(Normalization)
规范性是将不一样转变范畴的值投射到同样的固定不动范畴,普遍的是[0,1] ,这时也称之为归一化 。
X_normalized = preprocessing.normalize(X, norm='l2')
8.独热编码
enc = preprocessing.OneHotEncoder(categories='auto') enc.fit(y.reshape(-1,1)) y_one_hot=enc.transform(y.reshape(-1,1)) y_one_hot.toarray()
9.Binarizer二值化
binarizer = preprocessing.Binarizer(threshold=1.1)
binarizer.fit(X)
binarizer.transform(X)
10.代数式变换
poly =preprocessing.PolynomialFeatures(2)
poly.fit_transform(X)
11.自定变换
transformer = preprocessing.FunctionTransformer(np.log1p, validate=True)
transformer.fit(X)
log1p_x=transformer.transform(X)