Lorsque je lisais sur l'utilisation StandardScaler
, la plupart des recommandations disaient que vous devriez utiliser StandardScaler
avant de diviser les données en train / test, mais lorsque je vérifiais certains des codes publiés en ligne (en utilisant sklearn), il y avait deux utilisations principales.
1- Utilisation StandardScaler
sur toutes les données. Par exemple
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_fit = sc.fit(X)
X_std = X_fit.transform(X)
Ou
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X = sc.fit(X)
X = sc.transform(X)
Ou simplement
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_std = sc.fit_transform(X)
2- Utilisation StandardScaler
sur des données fractionnées.
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform (X_test)
Je voudrais standardiser mes données, mais je ne sais pas quelle méthode est la meilleure!
la source
Qu'en est-il des éléments suivants:
Parce que si
X_test = sc.transform(X_test)
, il renvoie l'erreurX_test
n'est pas encore ajusté. Ou ai-je raté quelque chose ici?la source
Vous ne devriez pas faire fit_transform (X_test) sur les données de test.
L'ajustement s'est déjà produit ci-dessus.
la source