class sklearn.preprocessing.OrdinalEncoder(*, categories="auto", dtype=<class 'numpy.float64'>, handle_unknown='error', unknown_value=None) [source]

Codifique características categóricas como una matriz de números enteros.

La entrada a este transformador debe ser una matriz de enteros o cadenas, que denota los valores tomados por características categóricas (discretas). Las entidades se convierten en números enteros ordinales. Esto da como resultado una sola columna de números enteros (0 a n_categorías – 1) por característica.

Leer más en el Guía del usuario.

Nuevo en la versión 0.20.

Parámetros
categories‘auto’ or a list of array-like, default=’auto’

Categorías (valores únicos) por función:

  • ‘auto’: determina categorías automáticamente a partir de los datos de entrenamiento.
  • lista : categories[i] contiene las categorías esperadas en la i-ésima columna. Las categorías pasadas no deben mezclar cadenas y valores numéricos, y deben ordenarse en el caso de valores numéricos.

Las categorías utilizadas se pueden encontrar en el categories_ atributo.

dtypenumber type, default np.float64

Tipo de salida deseado.

handle_unknown{‘error’, ‘use_encoded_value’}, default=’error’

Cuando se establece en ‘error’, se generará un error en caso de que una característica categórica desconocida esté presente durante la transformación. Cuando se establece en ‘use_encoded_value’, el valor codificado de las categorías desconocidas se establecerá en el valor dado para el parámetro unknown_value. En inverse_transform, una categoría desconocida se indicará como Ninguna.

Nuevo en la versión 0.24.

unknown_valueint or np.nan, default=None

Cuando el parámetro handle_unknown se establece en ‘use_encoded_value’, este parámetro es obligatorio y establecerá el valor codificado de las categorías desconocidas. Tiene que ser distinto de los valores utilizados para codificar cualquiera de las categorías en fit. Si se establece en np.nan, el dtype El parámetro debe ser un tipo d flotante.

Nuevo en la versión 0.24.

Atributos
categories_list of arrays

Las categorías de cada característica determinadas durante fit (en el orden de las características en X y correspondiente a la salida de transform). Esto no incluye categorías que no se vieron durante fit.

Ver también

OneHotEncoder

Realiza una codificación one-hot de características categóricas.

LabelEncoder

Codifica etiquetas de destino con valores entre 0 y n_classes-1.

Ejemplos de

Dado un conjunto de datos con dos características, dejamos que el codificador encuentre los valores únicos por característica y transforme los datos en una codificación ordinal.

>>> from sklearn.preprocessing import OrdinalEncoder
>>> enc = OrdinalEncoder()
>>> X = [['Male', 1], ['Female', 3], ['Female', 2]]
>>> enc.fit(X)
OrdinalEncoder()
>>> enc.categories_
[array(['Female', 'Male'], dtype=object), array([1, 2, 3], dtype=object)]
>>> enc.transform([['Female', 3], ['Male', 1]])
array([[0., 2.],
       [1., 0.]])
>>> enc.inverse_transform([[1, 0], [0, 1]])
array([['Male', 1],
       ['Female', 2]], dtype=object)

Métodos

fit(X[, y])

Ajuste el OrdinalEncoder a X.

fit_transform(X[, y])

Ajústelos a los datos y luego transfórmelos.

get_params([deep])

Obtenga parámetros para este estimador.

inverse_transform(X)

Convierta los datos de nuevo a la representación original.

set_params(** parámetros)

Establezca los parámetros de este estimador.

transform(X)

Transforma X en códigos ordinales.

fit(X, y=None) [source]

Ajuste el OrdinalEncoder a X.

Parámetros
Xarray-like, shape [n_samples, n_features]

Los datos para determinar las categorías de cada característica.

yNone

Ignorado. Este parámetro existe solo por compatibilidad con Pipeline.

Devoluciones
uno mismo
fit_transform(X, y=None, **fit_params) [source]

Ajústelos a los datos y luego transfórmelos.

Se adapta al transformador X y y con parámetros opcionales fit_params y devuelve una versión transformada de X.

Parámetros
Xarray-like of shape (n_samples, n_features)

Muestras de entrada.

yarray-like of shape (n_samples,) or (n_samples, n_outputs), default=None

Valores objetivo (Ninguno para transformaciones no supervisadas).

**fit_paramsdict

Parámetros de ajuste adicionales.

Devoluciones
X_newndarray array of shape (n_samples, n_features_new)

Matriz transformada.

get_params(deep=True) [source]

Obtenga parámetros para este estimador.

Parámetros
deepbool, default=True

Si es True, devolverá los parámetros para este estimador y los subobjetos contenidos que son estimadores.

Devoluciones
paramsdict

Nombres de parámetros asignados a sus valores.

inverse_transform(X) [source]

Convierta los datos a la representación original.

Parámetros
Xarray-like or sparse matrix, shape [n_samples, n_encoded_features]

Los datos transformados.

Devoluciones
X_trarray-like, shape [n_samples, n_features]

Matriz transformada inversa.

set_params(**params) [source]

Establezca 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.

Devoluciones
selfestimator instance

Instancia de estimador.

transform(X) [source]

Transforma X en códigos ordinales.

Parámetros
Xarray-like, shape [n_samples, n_features]

Los datos a codificar.

Devoluciones
X_outsparse matrix or a 2-d array

Entrada transformada.

Ejemplos usando sklearn.preprocessing.OrdinalEncoder

Compatibilidad con funciones categóricas en la mejora de degradado

Compatibilidad con funciones categóricas en la mejora de degradado

Combinar predictores mediante apilamiento

Combinar predictores mediante apilamiento

Regresión de Poisson y pérdida anormal

Regresión de Poisson y pérdida anormal