So schreiben sie eine case-anweisung in r (mit beispiel)
Eine Case-Anweisung ist ein Anweisungstyp, der Bedingungen durchläuft und einen Wert zurückgibt, wenn die erste Bedingung erfüllt ist.
Der einfachste Weg, eine Case-Anweisung in R zu implementieren, ist die Verwendung der Funktion case_when() aus dem dplyr- Paket:
library (dplyr) df %>% mutate(new_column = case_when( col1 < 9 ~ ' value1 ', col1 < 12 ~ ' value2 ', col1 < 15 ~ ' value3 ', TRUE ~ ' Great '))
Diese spezielle Funktion untersucht den Wert in der Spalte namens col1 und gibt Folgendes zurück:
- „ Wert1 “, wenn der Wert in Spalte1 kleiner als 9 ist
- „ Wert2 “, wenn der Wert in Spalte1 kleiner als 12 ist
- „ Wert3 “, wenn der Wert in Spalte2 kleiner als 15 ist
- „ Wert4 “, wenn keine der vorherigen Bedingungen wahr ist
Beachten Sie, dass TRUE einer „else“-Anweisung entspricht.
Das folgende Beispiel zeigt, wie Sie diese Funktion in der Praxis nutzen können.
Beispiel: case-Anweisung in R
Angenommen, wir haben den folgenden Datenrahmen in R:
#create data frame df <- data. frame (player=c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), points=c(6, 8, 9, 9, 12, 14, 15, 17, 19, 22)) #view data frame df player points 1 1 6 2 2 8 3 3 9 4 4 9 5 5 12 6 6 14 7 7 15 8 8 17 9 9 19 10 10 22
Mit der folgenden Syntax können wir eine Case-Anweisung schreiben, die eine neue Spalte namens „ class“ erstellt, deren Werte durch die Werte in der Punktespalte bestimmt werden:
library (dplyr) #create new column using case statement df %>% mutate(class = case_when( points < 9 ~ ' Bad ', points < 12 ~ ' OK ', points < 15 ~ ' Good ', TRUE ~ ' Great ')) player points class 1 1 6 Bad 2 2 8 Bad 3 3 9 OK 4 4 9 OK 5 5 12 Good 6 6 14 Good 7 7 15 Great 8 8 17 Great 9 9 19 Great 10 10 22 Great
Die case-Anweisung untersuchte den Wert in der Punktespalte und gab Folgendes zurück:
- „ Schlecht “, wenn der Wert in der Punktespalte kleiner als 9 war
- „ OK “, wenn der Wert in der Punktespalte kleiner als 12 war
- „ Gut “, wenn der Wert in der Punktespalte kleiner als 15 war
- „ Großartig “, wenn keine der vorherigen Bedingungen zutrifft
Die neue Spalte heißt class , da dies der Name ist, den wir in der Funktion mutate() angegeben haben.
Zusätzliche Ressourcen
Die folgenden Tutorials erklären, wie Sie andere häufige Aufgaben in R ausführen:
So verwenden Sie die If-Anweisung mit mehreren Bedingungen in R
So schreiben Sie eine verschachtelte If Else-Anweisung in R
So schreiben Sie Ihre erste tryCatch()-Funktion in R