python中的数据标准化

来源:互联网 发布:手机淘宝延长收货时间 编辑:程序博客网 时间:2024/05/29 18:42

      我们在进行数据分析之前,一般需要将数据进行标准化。以便消除不同变量量纲的差异性。在python中进行数据标准化可以通过sklearn中的StandardScaler模块来实现。

1)模块的导入

我们可以通过下边的命令来导入StandardScaler模块

from sklearn.preprocessing import StandardScaler  

2)常用函数介绍

scaler.fit(X[,y])

计算待标准化数据的均值和方差等参数。

scaler.fit_transform(X[,y])

对数据进行fit(感觉说拟合不太准确),然后标准化。

scaler.transform(X[, y, copy])

对数据进行标准化,与scaler.fit_transform(X[,y])的结果是一样的。

这两个函数的区别参考此博客:http://blog.csdn.net/appleyuchi/article/details/73503282

scaler.get_params( )

查看scaler的参数。

scaler.inverse_transform(X[, copy])

将标准化后是数据转换为原始数据。


下面是一个具体的例子,大家可以跑一下。这样就可以理解这些函数的具体意义了。

from sklearn.preprocessing import StandardScalerimport numpy as np#在进行标准化时,若数据只有一列,则需要转成列向量,否则会报错。data = np.array(range(100)).reshape(-1, 1) scaler = StandardScaler()#Compute the mean and std to be used for later scaling.scaler.fit(data)  scaler.scale_ scaler.mean_  #样本均值scaler.var_   #样本方差scaler.n_samples_seen_ #Fit to data, then transform it.scaler.fit_transform(data)#Get parameters for this estimator.scaler.get_params#Scale back the data to the original representation.scaler.inverse_transform(scaler.fit_transform(data))#Perform standardization by centering and scaling.scaler.transform(data)


参考文献:官方文档





原创粉丝点击