StandardScaler类中transform和fit_transform

StandardScaler类中transform和fit_transform方法里

fit_transform(X_train) :找出X_train的均值和​​​​​​​标准差,并应用在X_train上。
对于X_test,直接使用transform方法。
(此时StandardScaler已经保存了X_train的均值和标准差)

1.二者的功能都是对数据进行某种统一处理(比如标准化~N(0,1),将数据缩放(映射)到某个固定区间,归一化,正则化等)
2.transform(restData),从而保证train、rest处理方式相同。
3.如果fit_transfrom(trainData)后,使用fit_transform(restData)而不用transform(restData),虽然也能归一化,但是两个结果不是在同一个“标准”下的,具有明显差异

from sklearn import preprocessing
X_train, X_test, y_train, y_test = train_test_split(
    iris.data, iris.target, test_size=0.4, random_state=0)
scaler = preprocessing.StandardScaler().fit(X_train)
X_train_transform = scaler.transform(X_train)
X_test_transform = scaler.transform(X_test)

你可能感兴趣的:(python)