Cuando leía sobre el uso StandardScaler
, la mayoría de las recomendaciones decían que debería usar StandardScaler
antes de dividir los datos en tren / prueba, pero cuando estaba revisando algunos de los códigos publicados en línea (usando sklearn) había dos usos principales.
1- Uso StandardScaler
de todos los datos. P.ej
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_fit = sc.fit(X)
X_std = X_fit.transform(X)
O
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X = sc.fit(X)
X = sc.transform(X)
O simplemente
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_std = sc.fit_transform(X)
2- Uso StandardScaler
en datos divididos.
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform (X_test)
Me gustaría estandarizar mis datos, ¡pero estoy confundido sobre qué método es el mejor!
fuente
¿Qué tal lo siguiente:
Porque si
X_test = sc.transform(X_test)
devuelve el errorX_test
aún no está instalado. ¿O me perdí algo aquí?fuente
No debería estar haciendo fit_transform (X_test) en los datos de prueba.
El ajuste ya ocurrió arriba.
fuente