Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Kodierung Kategorialer Variablen | Datenumwandlungstechniken
Datenvorverarbeitung und Feature Engineering

bookKodierung Kategorialer Variablen

Kategorische Variablen sind Merkmale in Ihren Daten, die Kategorien anstelle von numerischen Werten darstellen. Beispiele hierfür sind Farben wie "red", "green" und "blue" oder Bezeichnungen wie "yes" und "no". Da Machine-Learning-Algorithmen numerische Eingabedaten benötigen, müssen diese kategorialen Variablen vor der Verwendung in Modellen in ein numerisches Format umgewandelt werden. Dieser Vorgang wird als Kodierung bezeichnet und stellt sicher, dass Algorithmen die Daten korrekt interpretieren und daraus lernen können.

Note
Definition

One-hot-Encoding erstellt für jede Kategorie einer kategorialen Variablen eine neue binäre Spalte. Jede Beobachtung erhält eine 1 in der Spalte, die ihrer Kategorie entspricht, und 0 in allen anderen Spalten.

12345678910111213
import seaborn as sns import pandas as pd # Load Titanic dataset data = sns.load_dataset("titanic") # One-hot encode the 'embarked' column embarked_encoded = pd.get_dummies(data["embarked"], prefix="embarked") # Concatenate with original dataset data = pd.concat([data, embarked_encoded], axis=1) print(data[["embarked", "embarked_C", "embarked_Q", "embarked_S"]].head())
copy
Note
Definition

Label Encoding weist jeder eindeutigen Kategorie in einer Variablen einen ganzzahligen Wert zu und wandelt Textbezeichnungen in Zahlen um.

123456789101112
import seaborn as sns import pandas as pd from sklearn.preprocessing import LabelEncoder # Load Titanic dataset data = sns.load_dataset("titanic") # Label encode the 'sex' column encoder = LabelEncoder() data["sex_encoded"] = encoder.fit_transform(data["sex"]) print(data[["sex", "sex_encoded"]].head())
copy
Note
Definition

Order Encoding weist den Kategorien basierend auf ihrer natürlichen Reihenfolge geordnete Ganzzahlen zu. Diese Methode bewahrt die inhärente Reihenfolge in ordinalen kategorialen Variablen, wie zum Beispiel Bildungsabschlüssen ("high school", "bachelor", "master", "doctorate").

123456789101112131415161718
import seaborn as sns import pandas as pd # Load Titanic dataset data = sns.load_dataset("titanic") # Define the order of passenger classes: First < Second < Third class_order = ["First", "Second", "Third"] # Apply ordered categorical encoding data["class_encoded"] = pd.Categorical( data["class"], categories=class_order, ordered=True ).codes + 1 # +1 to make classes start from 1 instead of 0 # Display sample output print(data[["class", "class_encoded"]].head())
copy
Note
Hinweis

Seien Sie vorsichtig beim Kodieren kategorialer Variablen. One-hot-Encoding kann zur Dummy-Variablen-Falle führen – einer Situation, in der Merkmale stark korreliert sind, was einige Modelle verwirren kann. Um dies zu vermeiden, kann eine der Dummy-Spalten entfernt werden. Label-Encoding erzwingt eine ordinale Beziehung zwischen den Kategorien, was für nominale Daten möglicherweise nicht geeignet ist.

question mark

Welche Kodierungsmethode ist für eine kategoriale Variable ohne intrinsische Reihenfolge, wie zum Beispiel "Color", am geeignetsten?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 2

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Awesome!

Completion rate improved to 8.33

bookKodierung Kategorialer Variablen

Swipe um das Menü anzuzeigen

Kategorische Variablen sind Merkmale in Ihren Daten, die Kategorien anstelle von numerischen Werten darstellen. Beispiele hierfür sind Farben wie "red", "green" und "blue" oder Bezeichnungen wie "yes" und "no". Da Machine-Learning-Algorithmen numerische Eingabedaten benötigen, müssen diese kategorialen Variablen vor der Verwendung in Modellen in ein numerisches Format umgewandelt werden. Dieser Vorgang wird als Kodierung bezeichnet und stellt sicher, dass Algorithmen die Daten korrekt interpretieren und daraus lernen können.

Note
Definition

One-hot-Encoding erstellt für jede Kategorie einer kategorialen Variablen eine neue binäre Spalte. Jede Beobachtung erhält eine 1 in der Spalte, die ihrer Kategorie entspricht, und 0 in allen anderen Spalten.

12345678910111213
import seaborn as sns import pandas as pd # Load Titanic dataset data = sns.load_dataset("titanic") # One-hot encode the 'embarked' column embarked_encoded = pd.get_dummies(data["embarked"], prefix="embarked") # Concatenate with original dataset data = pd.concat([data, embarked_encoded], axis=1) print(data[["embarked", "embarked_C", "embarked_Q", "embarked_S"]].head())
copy
Note
Definition

Label Encoding weist jeder eindeutigen Kategorie in einer Variablen einen ganzzahligen Wert zu und wandelt Textbezeichnungen in Zahlen um.

123456789101112
import seaborn as sns import pandas as pd from sklearn.preprocessing import LabelEncoder # Load Titanic dataset data = sns.load_dataset("titanic") # Label encode the 'sex' column encoder = LabelEncoder() data["sex_encoded"] = encoder.fit_transform(data["sex"]) print(data[["sex", "sex_encoded"]].head())
copy
Note
Definition

Order Encoding weist den Kategorien basierend auf ihrer natürlichen Reihenfolge geordnete Ganzzahlen zu. Diese Methode bewahrt die inhärente Reihenfolge in ordinalen kategorialen Variablen, wie zum Beispiel Bildungsabschlüssen ("high school", "bachelor", "master", "doctorate").

123456789101112131415161718
import seaborn as sns import pandas as pd # Load Titanic dataset data = sns.load_dataset("titanic") # Define the order of passenger classes: First < Second < Third class_order = ["First", "Second", "Third"] # Apply ordered categorical encoding data["class_encoded"] = pd.Categorical( data["class"], categories=class_order, ordered=True ).codes + 1 # +1 to make classes start from 1 instead of 0 # Display sample output print(data[["class", "class_encoded"]].head())
copy
Note
Hinweis

Seien Sie vorsichtig beim Kodieren kategorialer Variablen. One-hot-Encoding kann zur Dummy-Variablen-Falle führen – einer Situation, in der Merkmale stark korreliert sind, was einige Modelle verwirren kann. Um dies zu vermeiden, kann eine der Dummy-Spalten entfernt werden. Label-Encoding erzwingt eine ordinale Beziehung zwischen den Kategorien, was für nominale Daten möglicherweise nicht geeignet ist.

question mark

Welche Kodierungsmethode ist für eine kategoriale Variable ohne intrinsische Reihenfolge, wie zum Beispiel "Color", am geeignetsten?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 2
some-alt