sklearn.preprocessing.robust_scale

sklearn.preprocessing.robust_scale()

Estandariza un conjunto de datos a lo largo de cualquier eje

Centra a la mediana y escala por componentes según el rango intercuartílico.

Más información en el Manual de usuario.

Parámetros
X{array-like, sparse matrix} de forma (n_sample, n_features)

Los datos para centrar y escalar.

axisint, default=0

eje utilizado para calcular las medianas y el IQR (rango intercuartílico). Si es 0, escala independientemente cada característica, de lo contrario (si es 1) escala cada muestra.

with_centeringbool, default=True

Si es True, centra los datos antes del escalamiento.

with_scalingbool, default=True

Si es True, escala los datos a la varianza unitaria (o, de manera equivalente, a la desviación estándar unitaria).

quantile_rangetupla (q_min, q_max), 0.0 < q_min < q_max < 100.0

default=(25.0, 75.0), == (1st quantile, 3rd quantile), == IQR Rango de cuantiles utilizado para calcular scale_.

Nuevo en la versión 0.18.

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 CSR y si el eje es 1).

unit_variancebool, default=False

Si es True, escala los datos para que las características distribuidas normalmente tengan una varianza de 1. En general, si la diferencia entre los valores x de q_max y q_min para una distribución normal estándar es mayor que 1, el conjunto de datos será escalado hacia abajo. Si es menor que 1, el conjunto de datos se escalará hacia arriba.

Nuevo en la versión 0.24.

Devuelve
X_tr{ndarray, sparse matrix} de forma (n_samples, n_features)

Los datos transformados.

Ver también

RobustScaler

Realiza el centrado y el escalamiento utilizando la API Transformer (por ejemplo, como parte de un preprocesamiento Pipeline).

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_centering=False (en ese caso, sólo se realizará el escalamiento de la varianza en las características de la matriz CSR) o llamar a X.toarray() si espera que el arreglo denso materializado quepa en la memoria.

Para evitar la copia de memoria el invocador debe pasar una matriz CSR.

Para una comparación de los diferentes escaladores, transformadores y normalizadores, consulta examples/preprocessing/plot_all_scaling.py.

Advertencia

Riesgo de fuga de datos

No utilices robust_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 utilizar RobustScaler dentro de un Pipeline para evitar la mayoría de los riesgos de fuga de datos: pipe = make_pipeline(RobustScaler(), LogisticRegression()).