sklearn.preprocessing
.minmax_scale¶
- sklearn.preprocessing.minmax_scale()¶
Transforma las características escalando cada una de ellas a un rango determinado.
Este estimador escala y traduce cada característica individualmente de manera que se encuentre en el rango dado en el conjunto de entrenamiento, es decir, entre cero y uno.
La transformación viene dada por (cuando
axis=0
):X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0)) X_scaled = X_std * (max - min) + min
donde min, max = feature_range.
La transformación se calcula como (cuando
axis=0
):X_scaled = scale * X + min - X.min(axis=0) * scale where scale = (max - min) / (X.max(axis=0) - X.min(axis=0))
Esta transformación se utiliza a menudo como alternativa al escalamiento de media cero y varianza unitaria.
Lee más en el Manual de usuario.
Nuevo en la versión 0.17: Interfaz de la función minmax_scale a
MinMaxScaler
.- Parámetros
- Xarray-like de forma (n_samples, n_features)
Los datos.
- feature_rangetuple (min, max), default=(0, 1)
Rango deseado de datos transformados.
- axisint, default=0
Eje utilizado para escalar a lo largo. Si es 0, escala independientemente cada característica, de lo contrario (si es 1) escala cada muestra.
- copybool, default=True
Establécelo en False para realizar el escalamiento in place y evitar una copia (si la entrada ya es un arreglo de numpy).
- Devuelve
- X_trndarray de forma (n_samples, n_features)
Los datos transformados.
Advertencia
Riesgo de fuga de datos. No utilices
minmax_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 utilizarMinMaxScaler
dentro de un Pipeline para evitar la mayoría de los riesgos de fuga de datos:pipe = make_pipeline(MinMaxScaler(), LogisticRegression())
.
Ver también
MinMaxScaler
Realiza el escalamiento a un rango determinado mediante la API Transformer (por ejemplo, como parte de un
Pipeline
de preprocesamiento).
Notas
Para una comparación de los diferentes escaladores, transformadores y normalizadores, consulta examples/preprocessing/plot_all_scaling.py.