So führen sie one-hot-codierung in r durch
One-Hot-Codierung wird verwendet, um kategoriale Variablen in ein Format zu konvertieren, das von Algorithmen für maschinelles Lernen verwendet werden kann.
Die Grundidee des One-Hot-Codierens besteht darin, neue Variablen zu erstellen, die die Werte 0 und 1 annehmen, um die ursprünglichen kategorialen Werte darzustellen.
Das folgende Bild zeigt beispielsweise, wie wir eine kategoriale Variable mit Teamnamen per One-Hot-Codierung in neue Variablen konvertieren, die nur die Werte 0 und 1 enthalten:
Das folgende Schritt-für-Schritt-Beispiel zeigt, wie eine einmalige Codierung für genau diesen Datensatz in R durchgeführt wird.
Schritt 1: Erstellen Sie die Daten
Erstellen wir zunächst den folgenden Datenrahmen in R:
#create data frame df <- data. frame (team=c('A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'), points=c(25, 12, 15, 14, 19, 23, 25, 29)) #view data frame df team points 1 to 25 2 to 12 3 B 15 4 B 14 5 B 19 6 B 23 7 C 25 8 C 29
Schritt 2: Führen Sie eine One-Hot-Codierung durch
Als Nächstes verwenden wir die dummyVars()- Funktion des Caret- Pakets, um die Variable „team“ im Datenrahmen One-Hot zu kodieren:
library ( caret) #define one-hot encoding function dummy <- dummyVars(" ~ . ", data=df) #perform one-hot encoding on data frame final_df <- data. frame (predict(dummy, newdata=df)) #view final data frame final_df teamA teamB teamC points 1 1 0 0 25 2 1 0 0 12 3 0 1 0 15 4 0 1 0 14 5 0 1 0 19 6 0 1 0 23 7 0 0 1 25 8 0 0 1 29
Beachten Sie, dass dem Datenrahmen drei neue Spalten hinzugefügt wurden, da die ursprüngliche Spalte „Team“ drei eindeutige Werte enthielt.
Beachten Sie außerdem, dass die ursprüngliche Spalte „Team“ aus dem Datenrahmen entfernt wurde, da sie nicht mehr benötigt wird.
Die One-Hot-Codierung ist abgeschlossen und wir können diesen Datensatz nun in einen beliebigen maschinellen Lernalgorithmus unserer Wahl einspeisen.
Hinweis : Die vollständige Online-Dokumentation für die Funktion dummyVars() finden Sie hier .
Zusätzliche Ressourcen
Die folgenden Tutorials bieten zusätzliche Informationen zur Verwendung kategorialer Variablen:
So erstellen Sie kategoriale Variablen in R
So zeichnen Sie kategoriale Daten in R auf
Kategoriale oder quantitative Variablen: Was ist der Unterschied?