Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Codificador Ordinal | Preprocesamiento de Datos con Scikit-learn
Quizzes & Challenges
Quizzes
Challenges
/
Introducción al Aprendizaje Automático con Python

bookCodificador Ordinal

El siguiente aspecto a tratar son los datos categóricos. Existen dos tipos principales de variables categóricas.

Ordinal se refiere a datos con un orden natural, mientras que los datos nominales no lo tienen. Debido a este orden, las categorías pueden codificarse como números según su jerarquía.

Por ejemplo, una columna 'rate' con los valores 'Terrible', 'Bad', 'OK', 'Good' y 'Great' puede codificarse como:

  • 'Terrible' → 0
  • 'Bad' → 1
  • 'OK' → 2
  • 'Good' → 3
  • 'Great' → 4

Para codificar datos ordinales, se utiliza OrdinalEncoder. Este convierte las categorías en enteros comenzando desde 0.

OrdinalEncoder se aplica de la misma manera que otros transformadores. El principal desafío consiste en especificar correctamente el argumento categories.

Por ejemplo, considere un conjunto de datos (no el conjunto de datos penguins) que contiene una columna 'education'. El primer paso es verificar sus valores únicos.

12345
import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/adult_edu.csv') print(df['education'].unique())
copy

Se debe crear una lista ordenada de valores categóricos, que vaya desde 'HS-grad' hasta 'Doctorate'.

1234567891011121314
import pandas as pd from sklearn.preprocessing import OrdinalEncoder # Load the data and assign X, y variables df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/adult_edu.csv') y = df['income'] # 'income' is a target in this dataset X = df.drop('income', axis=1) # Create a list of categories so HS-grad is encoded as 0 and Doctorate as 6 edu_categories = ['HS-grad', 'Some-college', 'Assoc', 'Bachelors', 'Masters', 'Prof-school', 'Doctorate'] # Initialize an OrdinalEncoder instance with the correct categories ord_enc = OrdinalEncoder(categories=[edu_categories]) # Transform the 'education' column and print it X['education'] = ord_enc.fit_transform(X[['education']]) print(X['education'])
copy

Al transformar múltiples características con OrdinalEncoder, las categorías para cada columna deben especificarse explícitamente. Esto se realiza mediante el argumento categories:

encoder = OrdinalEncoder(categories=[col1_categories, col2_categories, ...])

1. ¿Cuál afirmación describe mejor el uso de OrdinalEncoder para manejar datos categóricos en un conjunto de datos?

2. Suponga que tiene una columna categórica llamada 'Color'. ¿Sería apropiado utilizar OrdinalEncoder para codificar sus valores?

question mark

¿Cuál afirmación describe mejor el uso de OrdinalEncoder para manejar datos categóricos en un conjunto de datos?

Select the correct answer

question mark

Suponga que tiene una columna categórica llamada 'Color'. ¿Sería apropiado utilizar OrdinalEncoder para codificar sus valores?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 5

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

Can you explain the difference between ordinal and nominal data in more detail?

How do I determine the correct order for ordinal categories?

What happens if I don't specify the categories argument correctly in OrdinalEncoder?

bookCodificador Ordinal

Desliza para mostrar el menú

El siguiente aspecto a tratar son los datos categóricos. Existen dos tipos principales de variables categóricas.

Ordinal se refiere a datos con un orden natural, mientras que los datos nominales no lo tienen. Debido a este orden, las categorías pueden codificarse como números según su jerarquía.

Por ejemplo, una columna 'rate' con los valores 'Terrible', 'Bad', 'OK', 'Good' y 'Great' puede codificarse como:

  • 'Terrible' → 0
  • 'Bad' → 1
  • 'OK' → 2
  • 'Good' → 3
  • 'Great' → 4

Para codificar datos ordinales, se utiliza OrdinalEncoder. Este convierte las categorías en enteros comenzando desde 0.

OrdinalEncoder se aplica de la misma manera que otros transformadores. El principal desafío consiste en especificar correctamente el argumento categories.

Por ejemplo, considere un conjunto de datos (no el conjunto de datos penguins) que contiene una columna 'education'. El primer paso es verificar sus valores únicos.

12345
import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/adult_edu.csv') print(df['education'].unique())
copy

Se debe crear una lista ordenada de valores categóricos, que vaya desde 'HS-grad' hasta 'Doctorate'.

1234567891011121314
import pandas as pd from sklearn.preprocessing import OrdinalEncoder # Load the data and assign X, y variables df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/adult_edu.csv') y = df['income'] # 'income' is a target in this dataset X = df.drop('income', axis=1) # Create a list of categories so HS-grad is encoded as 0 and Doctorate as 6 edu_categories = ['HS-grad', 'Some-college', 'Assoc', 'Bachelors', 'Masters', 'Prof-school', 'Doctorate'] # Initialize an OrdinalEncoder instance with the correct categories ord_enc = OrdinalEncoder(categories=[edu_categories]) # Transform the 'education' column and print it X['education'] = ord_enc.fit_transform(X[['education']]) print(X['education'])
copy

Al transformar múltiples características con OrdinalEncoder, las categorías para cada columna deben especificarse explícitamente. Esto se realiza mediante el argumento categories:

encoder = OrdinalEncoder(categories=[col1_categories, col2_categories, ...])

1. ¿Cuál afirmación describe mejor el uso de OrdinalEncoder para manejar datos categóricos en un conjunto de datos?

2. Suponga que tiene una columna categórica llamada 'Color'. ¿Sería apropiado utilizar OrdinalEncoder para codificar sus valores?

question mark

¿Cuál afirmación describe mejor el uso de OrdinalEncoder para manejar datos categóricos en un conjunto de datos?

Select the correct answer

question mark

Suponga que tiene una columna categórica llamada 'Color'. ¿Sería apropiado utilizar OrdinalEncoder para codificar sus valores?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

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