sklearn.impute.SimpleImputer

class sklearn.impute.SimpleImputer

Transformador de imputación para completar valores faltantes.

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

Nuevo en la versión 0.20: SimpleImputer sustituye al anterior estimador sklearn.preprocessing.Imputer que ahora se elimina.

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 que pd.NA se convertirá en np.nan.

strategystring, default=”mean”

La estrategia de imputación.

  • Si es «mean», entonces reemplaza los valores faltantes usando la media a lo largo de cada columna. Sólo puede utilizarse con datos numéricos.

  • Si es «median», entonces reemplaza los valores faltantes usando la mediana a lo largo de cada columna. Sólo puede utilizarse con datos numéricos.

  • Si es » most_frequent», entonces reemplaza los faltantes usando el valor más frecuente a lo largo de cada columna. Puede utilizarse con cadenas o datos numéricos. Si hay más de un valor de este tipo, sólo se devuelve el más pequeño.

  • Si es » constant «, entonces reemplaza los valores faltantes con fill_value. Puede utilizarse con cadenas o datos numéricos.

Nuevo en la versión 0.20: strategy=»constant» for fixed value imputation.

fill_valuecadena o valor numérico, default=None

Cuando la estrategia == «constant», fill_value se utiliza para reemplazar todas las ocurrencias de missing_values. Si se deja predeterminado, fill_value será 0 cuando se imputen datos numéricos y «missing_value» para cadenas o tipos de datos de objetos.

verboseinteger, default=0

Controla la verbosidad del imputador.

copyboolean, default=True

Si es True, se creará una copia de X. Si es False, la imputación se hará en su lugar siempre que sea posible. Tenga en cuenta que, en los siguientes casos, siempre se hará una nueva copia, incluso si copy=False:

  • Si X no es un arreglo de valores flotantes;

  • Si X se codifica como una matriz CSR;

  • Si add_indicator=True.

add_indicatorboolean, 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 falta aunque haya valores faltantes en el tiempo de transformación/prueba.

Atributos
statistics_arreglo de forma (n_features,)

El valor de relleno de imputación para cada característica. El cálculo de las estadísticas puede dar lugar a valores np.nan. Durante transform, las características correspondientes a las estadísticas np.nan serán descartadas.

indicator_MissingIndicator

Indicador utilizado para añadir indicadores binarios para los valores faltantes. None si add_indicator es False.

Ver también

IterativeImputer

Imputación multivariante de valores faltantes.

Notas

Las columnas que sólo contenían valores faltantes en fit se descartan en transform si la estrategia no es «constant».

Ejemplos

>>> import numpy as np
>>> from sklearn.impute import SimpleImputer
>>> imp_mean = SimpleImputer(missing_values=np.nan, strategy='mean')
>>> imp_mean.fit([[7, 2, 3], [4, np.nan, 6], [10, 5, 9]])
SimpleImputer()
>>> X = [[np.nan, 2, 3], [4, np.nan, 6], [10, np.nan, 9]]
>>> print(imp_mean.transform(X))
[[ 7.   2.   3. ]
 [ 4.   3.5  6. ]
 [10.   3.5  9. ]]

Métodos

fit

Ajustar el imputador en X.

fit_transform

Se ajustan los datos y luego se transforman.

get_params

Obtiene los parámetros para este estimador.

inverse_transform

Convierte los datos a la representación original.

set_params

Establece los parámetros de este estimador.

transform

Imputa todos los valores faltantes en X.

fit()

Ajustar el imputador en X.

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

Datos de entrada, donde n_samples es el número de muestras y n_features es el número de características.

Devuelve
selfSimpleImputer
fit_transform()

Se ajustan los datos y luego se transforman.

Ajusta el transformador a X y y con los parámetros opcionales fit_params y devuelve una versión transformada de X.

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.

inverse_transform()

Convierte los datos a la representación original.

Invierte la operación de transform realizada en un arreglo. Esta operación sólo puede realizarse después de instanciar SimpleImputer con add_indicator=True.

Tenga en cuenta que inverse_transform sólo puede invertir la transformación en características que tienen indicadores binarios para los valores faltantes. Si una característica no tiene valores faltantes en el momento de fit, la característica no tendrá un indicador binario, y la imputación realizada en el momento de transform no se invertirá.

Nuevo en la versión 0.24.

Parámetros
Xarray-like de forma (n_samples, n_features + n_features_missing_indicator)

Los datos imputados para ser revertidos a los datos originales. Tiene que ser un arreglo aumentado de datos imputados y la máscara del indicador faltante.

Devuelve
X_originalndarray de forma (n_samples, n_features)

La X original con valores faltantes tal y como estaba antes de la imputación.

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
X{array-like, sparse matrix}, forma (n_samples, n_features)

Los datos de entrada a completar.

Ejemplos usando sklearn.impute.SimpleImputer