Jak napisać opis przypadku w r (z przykładem)
Instrukcja case to typ instrukcji, która cyklicznie przechodzi przez warunki i zwraca wartość, gdy pierwszy warunek zostanie spełniony.
Najłatwiejszym sposobem zaimplementowania instrukcji case w R jest użycie funkcji case_when() z pakietu dplyr :
library (dplyr) df %>% mutate(new_column = case_when( col1 < 9 ~ ' value1 ', col1 < 12 ~ ' value2 ', col1 < 15 ~ ' value3 ', TRUE ~ ' Great '))
Ta konkretna funkcja sprawdza wartość w kolumnie o nazwie col1 i zwraca:
- „ wartość1 ”, jeśli wartość w kolumnie1 jest mniejsza niż 9
- „ wartość2 ”, jeśli wartość w kolumnie1 jest mniejsza niż 12
- „ wartość3 ”, jeśli wartość w kolumnie2 jest mniejsza niż 15
- „ wartość4 ”, jeśli żaden z poprzednich warunków nie jest spełniony
Należy pamiętać, że TRUE jest odpowiednikiem instrukcji „else”.
Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.
Przykład: opis sprawy w R
Załóżmy, że mamy następującą ramkę danych w 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
Możemy użyć poniższej składni, aby napisać instrukcję case, która tworzy nową kolumnę o nazwie class , której wartości są określone przez wartości w kolumnie punktów :
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
Instrukcja case sprawdziła wartość w kolumnie punktów i zwróciła:
- „ Zły ”, jeśli wartość w kolumnie punktów była mniejsza niż 9
- „ OK ”, jeśli wartość w kolumnie punktów była mniejsza niż 12
- „ Dobrze ”, jeśli wartość w kolumnie punktów była mniejsza niż 15
- „ Świetnie ”, jeśli żaden z powyższych warunków nie jest spełniony
Nowa kolumna nazywa się class , ponieważ taką nazwę podaliśmy w funkcji mutate() .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:
Jak używać instrukcji If z wieloma warunkami w R
Jak napisać zagnieżdżoną instrukcję If Else w R
Jak napisać swoją pierwszą funkcję tryCatch() w R