Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Ordinalencoder | Gegevens Preprocessen Met Scikit-learn
ML-Introductie Met Scikit-Learn

bookOrdinalencoder

Het volgende aandachtspunt is categorische data. Er zijn twee hoofdtypen categorische variabelen.

Ordinale data heeft een natuurlijke volgorde, terwijl nominale data dat niet heeft. Door deze volgorde kunnen categorieën worden gecodeerd als getallen op basis van hun rangschikking.

Een voorbeeld: een 'rate'-kolom met de waarden 'Terrible', 'Bad', 'OK', 'Good' en 'Great' kan als volgt worden gecodeerd:

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

Voor het coderen van ordinale data wordt de OrdinalEncoder gebruikt. Deze zet categorieën om in gehele getallen, beginnend bij 0.

OrdinalEncoder wordt op dezelfde manier toegepast als andere transformators. De grootste uitdaging is het correct specificeren van het argument categories.

Neem bijvoorbeeld een dataset (niet de penguins dataset) met een 'education'-kolom. De eerste stap is het controleren van de unieke waarden.

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

Er moet een geordende lijst van categorische waarden worden gemaakt, variërend van 'HS-grad' tot '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

Bij het transformeren van meerdere kenmerken met OrdinalEncoder moeten de categorieën voor elke kolom expliciet worden gespecificeerd. Dit gebeurt via het argument categories:

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

1. Welke uitspraak beschrijft het gebruik van de OrdinalEncoder voor het verwerken van categorische gegevens in een dataset het beste?

2. Stel dat je een categorische kolom genaamd 'Color' hebt. Is het gepast om de OrdinalEncoder te gebruiken om de waarden te coderen?

question mark

Welke uitspraak beschrijft het gebruik van de OrdinalEncoder voor het verwerken van categorische gegevens in een dataset het beste?

Select the correct answer

question mark

Stel dat je een categorische kolom genaamd 'Color' hebt. Is het gepast om de OrdinalEncoder te gebruiken om de waarden te coderen?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 5

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

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?

Awesome!

Completion rate improved to 3.13

bookOrdinalencoder

Veeg om het menu te tonen

Het volgende aandachtspunt is categorische data. Er zijn twee hoofdtypen categorische variabelen.

Ordinale data heeft een natuurlijke volgorde, terwijl nominale data dat niet heeft. Door deze volgorde kunnen categorieën worden gecodeerd als getallen op basis van hun rangschikking.

Een voorbeeld: een 'rate'-kolom met de waarden 'Terrible', 'Bad', 'OK', 'Good' en 'Great' kan als volgt worden gecodeerd:

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

Voor het coderen van ordinale data wordt de OrdinalEncoder gebruikt. Deze zet categorieën om in gehele getallen, beginnend bij 0.

OrdinalEncoder wordt op dezelfde manier toegepast als andere transformators. De grootste uitdaging is het correct specificeren van het argument categories.

Neem bijvoorbeeld een dataset (niet de penguins dataset) met een 'education'-kolom. De eerste stap is het controleren van de unieke waarden.

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

Er moet een geordende lijst van categorische waarden worden gemaakt, variërend van 'HS-grad' tot '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

Bij het transformeren van meerdere kenmerken met OrdinalEncoder moeten de categorieën voor elke kolom expliciet worden gespecificeerd. Dit gebeurt via het argument categories:

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

1. Welke uitspraak beschrijft het gebruik van de OrdinalEncoder voor het verwerken van categorische gegevens in een dataset het beste?

2. Stel dat je een categorische kolom genaamd 'Color' hebt. Is het gepast om de OrdinalEncoder te gebruiken om de waarden te coderen?

question mark

Welke uitspraak beschrijft het gebruik van de OrdinalEncoder voor het verwerken van categorische gegevens in een dataset het beste?

Select the correct answer

question mark

Stel dat je een categorische kolom genaamd 'Color' hebt. Is het gepast om de OrdinalEncoder te gebruiken om de waarden te coderen?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 5
some-alt