Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
CodificadorOrdinal | Preprocesamiento de Datos con Scikit-learn
ML Introduction with scikit-learn

CodificadorOrdinalCodificadorOrdinal

El siguiente problema que resolveremos son los datos categóricos. Recordemos que hay dos tipos de datos categóricos.

Los datos ordinales siguen un orden natural, mientras que los nominales no.
Puesto que existe un orden natural, podemos codificar categorías a los números en ese orden.
Por ejemplo, codificaríamos la columna "tasa" que contiene los valores "Terrible", "Malo", "OK", "Bueno" y "Genial" como:
Terrible - 0 Malo" - 1 OK" - 2 Bueno" - 3 Excelente' - 4 Para codificar datos ordinales, se utiliza OrdinalEncoder. Sólo codifica las categorías en 0, 1, 2, ...

Aquí tienes una imagen que muestra cómo funciona.

OrdinalEncoder es fácil de usar como cualquier otro transformador. La única dificultad es especificar correctamente el argumento categories.
Veamos un ejemplo de uso. Tenemos un conjunto de datos (no el conjunto de datos Penguins) con la columna 'education'. Veamos sus valores únicos.

Necesitamos crear una lista de valores categóricos ordenados, en este caso, desde 'HS-grad' hasta 'Doctorado'.

Nota

El OrdinalEncoder se utiliza principalmente para transformar las características (variable X). Y la variable X suele ser un DataFrame que contiene más de 1 columna.
Por eso, el argumento categories permite especificar la lista de categorías para cada columna, por ejemplo, categories=[col1_categories, col2_categories].
Y si desea transformar sólo 1 columna, debe pasar una lista que contenga otra lista, por ejemplo, categories=[col1_categories].
Esa es también la razón por la que el método .fit_transform() espera el DataFrame y no funciona con Series, por lo que necesitas pasar df[['columna']] para transformar sólo una columna.

¿Todo estuvo claro?

Sección 2. Capítulo 5
course content

Contenido del Curso

ML Introduction with scikit-learn

CodificadorOrdinalCodificadorOrdinal

El siguiente problema que resolveremos son los datos categóricos. Recordemos que hay dos tipos de datos categóricos.

Los datos ordinales siguen un orden natural, mientras que los nominales no.
Puesto que existe un orden natural, podemos codificar categorías a los números en ese orden.
Por ejemplo, codificaríamos la columna "tasa" que contiene los valores "Terrible", "Malo", "OK", "Bueno" y "Genial" como:
Terrible - 0 Malo" - 1 OK" - 2 Bueno" - 3 Excelente' - 4 Para codificar datos ordinales, se utiliza OrdinalEncoder. Sólo codifica las categorías en 0, 1, 2, ...

Aquí tienes una imagen que muestra cómo funciona.

OrdinalEncoder es fácil de usar como cualquier otro transformador. La única dificultad es especificar correctamente el argumento categories.
Veamos un ejemplo de uso. Tenemos un conjunto de datos (no el conjunto de datos Penguins) con la columna 'education'. Veamos sus valores únicos.

Necesitamos crear una lista de valores categóricos ordenados, en este caso, desde 'HS-grad' hasta 'Doctorado'.

Nota

El OrdinalEncoder se utiliza principalmente para transformar las características (variable X). Y la variable X suele ser un DataFrame que contiene más de 1 columna.
Por eso, el argumento categories permite especificar la lista de categorías para cada columna, por ejemplo, categories=[col1_categories, col2_categories].
Y si desea transformar sólo 1 columna, debe pasar una lista que contenga otra lista, por ejemplo, categories=[col1_categories].
Esa es también la razón por la que el método .fit_transform() espera el DataFrame y no funciona con Series, por lo que necesitas pasar df[['columna']] para transformar sólo una columna.

¿Todo estuvo claro?

Sección 2. Capítulo 5
some-alt