http://scikit-learn.org/stable/modules/preprocessing.html
代码:
from sklearn.preprocessing import StandardScaler
data = np.arange(9).reshape((3,3))
print('#'*60)
print('原始数据:\n',data)
test = [[10,11,12]]
print('测试数据:\n',test)
print('利用.fit()计算数据的均值与方差,为后面的train与test的数据变换统一基准')
scalar = StandardScaler().fit(data) # calculate mean and var
print('数据沿列方向的均值:\n',scalar.mean_) # mean
print('数据沿列方向的方差:\n',scalar.var_) # var
print('数据train标准化transform后:\n',scalar.transform(data)) # transform the original data
t = scalar.transform(test)
print('数据test与train进行相同transform标准化后:\n',t) # transform the test data
print('数据逆变换结果\n',scalar.inverse_transform(t))
print('#'*60)
结果:
############################################################
原始数据:
[[0 1 2]
[3 4 5]
[6 7 8]]
测试数据:
[[10, 11, 12]]
利用.fit()计算数据的均值与方差,为后面的train与test的数据变换统一基准
数据沿列方向的均值:
[3. 4. 5.]
数据沿列方向的方差:
[6. 6. 6.]
数据train标准化transform后:
[[-1.22474487 -1.22474487 -1.22474487]
[ 0. 0. 0. ]
[ 1.22474487 1.22474487 1.22474487]]
数据test与train进行相同transform标准化后:
[[2.85773803 2.85773803 2.85773803]]
数据逆变换结果
[[10. 11. 12.]]
############################################################