x_train = np.array([[1,-1,2],
[2,0,0],
[0,1,-1]])
min_max_scaler = preprocessing.minmaxscaler()
x_train_minmax = min_max_scaler.fit_transform(x_train)
print(x_train_minmax)
#縮放因子等屬性
print(min_max_scaler.scale_)
print(min_max_scaler.min_)
在構造物件時也可以直接指定最大最小值的範圍:feature_range=(min,max),此時公式變為:
x_std=(x-x.min(axis=0))/(x.max(axis=0)-x.min(axis=0))
x_std=x_std/(max-min)+min
from sklearn.preprocessing import maxabsscaler
def test_maxabsscaler():
x=[[1,5,1,2,10],
[2,6,3,2,7],
[3,7,5,6,4],
[4,8,7,8,1]]
print('before transform:',x)
scaler=maxabsscaler()
scaler.fit(x)
print('scale_ is :',scaler.scale_)#每個屬性的縮放倍數的倒數,也是每個所熟悉的絕對值的最大值
print('max_abs_ is:',scaler.max_abs_)#給出每個屬性的絕對值的最大值
print('after transform:',scaler.transform(x))
#標準化後,每個值的絕對值在【0,1】間
test_maxabsscaler()
執行結果:
before transform: [[1, 5, 1, 2, 10], [2, 6, 3, 2, 7], [3, 7, 5, 6, 4], [4, 8, 7, 8, 1]]1.採用preprocessing.standardscaler(類scale_ is : [ 4. 8. 7. 8. 10.]
max_abs_ is: [ 4. 8. 7. 8. 10.]
after transform: [[0.25 0.625 0.14285714 0.25 1. ]
[0.5 0.75 0.42857143 0.25 0.7 ]
[0.75 0.875 0.71428571 0.75 0.4 ]
[1. 1. 1. 1. 0.1 ]]
使用該類的好處在於可以儲存訓練集中的引數(均值,方差)直接使用其的物件轉換成測試集資料
而且還能把資料還原mm.fit_transform(data)
from sklearn import preprocessing
import numpy as np
x=np.array([[1,-1,2],
[2,0,0],
[0,1,-1]])
#1.採用preprocessing.standardscaler(類
#使用該類的好處在於可以儲存訓練集中的引數(均值,方差)直接使用其的物件轉換成測試集資料
scaler=preprocessing.standardscaler().fit(x)#將縮放後的資料在經過 standardscaler復原
print(scaler.mean_ )
print(scaler.var_ )
print(scaler.transform(x))
7 資料預處理 資料標準化
這個文章知識講解了入門的資料預處理,更多的歸一化方法請看 sklearn中常用資料預處理方法 由於資料的偏差與跨度會影響機器學習的成效,因此正規化 標準化 資料可以提公升機器學習的成效。首先由例子來講解 例子1 資料標準化 例子2 資料標準化對機器學習成效的影響 資料預處理模組 from sklea...
資料預處理之資料標準化
在對資料集建模前,常常要對資料的某一特徵或幾個特徵進行規範化處理,其目的在於將特徵值歸一到同乙個維度,消除比重不平衡的問題。常用的標準化方法有最大 最小標準化 零 均值標準化和小數定標標準化。最大 最小標準化又稱為離差標準化,將原始資料進行線性變換,對映到 0,1 區間。轉換公式如下 其中,max為...
資料預處理之標準化
近來趁專案間隔期,工作不是太多,也在利用空餘時間把資料分析的完整流程用python實現一遍,也恰好整理下這幾年手頭的一些資料,順序可能比較亂,後期再慢慢調整。資料的標準化 normalization 是將資料按照一定規則縮放,使之落入乙個小的特定區間。這樣去除資料的單位限制,將其轉化為無量綱的純數值...