sklearn.impute
.KNNImputer¶
- class sklearn.impute.KNNImputer¶
Imputación para completar los valores faltantes mediante vecinos más cercanos (k-Nearest Neighbors).
Los valores faltantes en cada muestra se imputan utilizando el valor medio de los
n_neighbors
vecinos más cercanos encontrados en el conjunto de entrenamiento. Dos muestras son cercanas si las características que faltan están cerca.Más información en el Manual de usuario.
Nuevo en la versión 0.22.
- Parámetros
- missing_valuesint, float, str, np.nan o None, default=np.nan
El marcador de posición para los valores faltantes. Todas las ocurrencias de
missing_values
serán imputadas. Para los dataframes de pandas con dtypes enteros anulables con valores faltantes,missing_values
debe establecerse en np.nan, ya quepd.NA
se convertirá en np.nan.- n_neighborsint, default=5
Número de muestras vecinas a utilizar para la imputación.
- weights{“uniform”, “distance”} o invocable, default=”uniform”
Función de peso utilizada en la predicción. Valores posibles:
“uniform” : ponderaciones uniformes. Todos los puntos de cada vecindario se ponderan por igual.
“distance” : ponderar los puntos por la inversa de su distancia. en este caso, los vecinos más cercanos de un punto de consulta tendrán una mayor influencia que los vecinos más alejados.
callable : una función definida por el usuario que acepta un arreglo de distancias, y devuelve un arreglo de la misma forma que contiene los pesos.
- metric{“nan_euclidean”} or callable, default=”nan_euclidean”
Métrica de distancia para la búsqueda de vecinos. Valores posibles:
“nan_euclidean”
callable : una función definida por el usuario que se ajusta a la definición de
_pairwise_callable(X, Y, metric, **kwds)
. La función acepta dos arreglos, X e Y, y una palabra clavemissing_values
enkwds
y devuelve un valor de distancia escalar.
- copybool, default=False
Si es True, se creará una copia de X. Si es False, la imputación se hará en el lugar siempre que sea posible.
- add_indicatorbool, default=False
Si es True, una transformación
MissingIndicator
se apilará en la salida de la transformación del imputador. Esto permite que un estimador predictivo tenga en cuenta los valores faltantes a pesar de la imputación. Si una característica no tiene valores faltantes en el tiempo de ajuste/entrenamiento, la característica no aparecerá en el indicador de ausencia aunque haya valores faltantes en el tiempo de transformación/prueba.
- Atributos
- indicator_
MissingIndicator
Indicador utilizado para añadir indicadores binarios para los valores faltantes.
None
si add_indicator es False.
- indicator_
Referencias
Olga Troyanskaya, Michael Cantor, Gavin Sherlock, Pat Brown, Trevor Hastie, Robert Tibshirani, David Botstein and Russ B. Altman, Missing value estimation methods for DNA microarrays, BIOINFORMATICS Vol. 17 no. 6, 2001 Pages 520-525.
Ejemplos
>>> import numpy as np >>> from sklearn.impute import KNNImputer >>> X = [[1, 2, np.nan], [3, 4, 3], [np.nan, 6, 5], [8, 8, 7]] >>> imputer = KNNImputer(n_neighbors=2) >>> imputer.fit_transform(X) array([[1. , 2. , 4. ], [3. , 4. , 3. ], [5.5, 6. , 5. ], [8. , 8. , 7. ]])
Métodos
Ajusta el imputer en X.
Se ajustan los datos y luego se transforman.
Obtiene los parámetros para este estimador.
Establece los parámetros de este estimador.
Imputa todos los valores faltantes en X.
- fit()¶
Ajusta el imputer en X.
- Parámetros
- Xarray-like de forma (n_samples, n_features)
Datos de entrada, donde
n_samples
es el número de muestras yn_features
es el número de características.
- Devuelve
- selfobject
- fit_transform()¶
Se ajustan los datos y luego se transforman.
Ajusta el transformador a
X
yy
con los parámetros opcionalesfit_params
y devuelve una versión transformada deX
.- Parámetros
- Xarray-like de forma (n_samples, n_features)
Muestras de entrada.
- yarray-like de forma (n_samples,) o (n_samples, n_outputs), default=None
Valores objetivo (None para transformaciones no supervisadas).
- **fit_paramsdict
Parámetros de ajuste adicionales.
- Devuelve
- X_newarreglo ndarray de forma (n_samples, n_features_new)
Arreglo transformado.
- get_params()¶
Obtiene los parámetros para este estimador.
- Parámetros
- deepbool, default=False
Si es True, devolverá los parámetros para este estimador y los subobjetos contenidos que son estimadores.
- Devuelve
- paramsdict
Nombres de parámetros mapeados a sus valores.
- set_params()¶
Establece los parámetros de este estimador.
El método funciona tanto en estimadores simples como en objetos anidados (como
Pipeline
). Estos últimos tienen parámetros de la forma<component>__<parameter>
para que sea posible actualizar cada componente de un objeto anidado.- Parámetros
- **paramsdict
Parámetros del estimador.
- Devuelve
- selfinstancia del estimador
Instancia del estimador.
- transform()¶
Imputa todos los valores faltantes en X.
- Parámetros
- Xarray-like de forma (n_samples, n_features)
Los datos de entrada a completar.
- Devuelve
- Xarray-like de forma (n_samples, n_output_features)
El conjunto de datos imputados.
n_output_features
es el número de características que no siempre falta durantefit
.