sklearn.preprocessing
.scale¶
- sklearn.preprocessing.scale()¶
Estandariza un conjunto de datos a lo largo de cualquier eje.
Centra a la media y escala los componentes a la varianza unitaria.
Más información en el Manual de usuario.
- Parámetros
- X{array-like, sparse matrix} de forma (n_samples, n_features)
Los datos para centrar y escalar.
- axisint, default=0
eje utilizado para calcular las medias y las desviaciones estándar. Si es 0, estandariza independientemente cada característica, de lo contrario (si es 1) estandariza cada muestra.
- with_meanbool, default=True
Si es True, centra los datos antes del escalamiento.
- with_stdbool, default=True
Si es True, escala los datos a la varianza unitaria (o, de manera equivalente, a la desviación estándar unitaria).
- copybool, default=True
establécelo en False para realizar la normalización de filas in place y evitar una copia (si la entrada ya es un arreglo numpy o una matriz scipy.sparse CSC y si el eje es 1).
- Devuelve
- X_tr{ndarray, sparse matrix} de forma (n_samples, n_features)
Los datos transformados.
Ver también
StandardScaler
Realiza el escalamiento a la varianza unitaria mediante la API Transformer (por ejemplo, como parte de un
Pipeline
de preprocesamiento).
Notas
Esta implementación se negará a centrar las matrices scipy.sparse, ya que las convertiría en no dispersas y potencialmente bloquearía el programa con problemas de agotamiento de memoria.
En su lugar, se espera que el invocador(caller) establezca explícitamente
with_mean=False
(en ese caso, sólo se realizará el escalamiento de la varianza en las características de la matriz CSC) o llamar aX.toarray()
si espera que el arreglo denso materializado quepa en la memoria.Para evitar la copia de memoria el invocador debe pasar una matriz CSC.
Los NaNs son tratados como valores faltantes: no se tienen en cuenta para calcular las estadísticas y se mantienen durante la transformación de los datos.
Utilizamos un estimador sesgado para la desviación estándar, equivalente a
numpy.std(x, ddof=0)
. Ten en cuenta que la elección deddof
es poco probable que afecte al rendimiento del modelo.Para una comparación de los diferentes escaladores, transformadores y normalizadores, ver examples/preprocessing/plot_all_scaling.py.
Advertencia
Riesgo de fuga de datos
No utilices
scale
a menos que sepas lo que estás haciendo. Un error común es aplicarlo a todos los datos antes de dividirlos en conjuntos de entrenamiento y prueba. Esto sesgará la evaluación del modelo porque la información se habrá filtrado del conjunto de prueba al conjunto de entrenamiento. En general, recomendamos utilizarStandardScaler
dentro de un Pipeline para evitar la mayoría de los riesgos de fuga de datos:pipe = make_pipeline(StandardScaler(), LogisticRegression())
.