Як написати інструкцію в r (з прикладом)
Оператор case — це тип оператора, який циклічно перебирає умови та повертає значення, коли виконується перша умова.
Найпростіший спосіб реалізувати оператор case в R — це використовувати функцію case_when() з пакету dplyr :
library (dplyr) df %>% mutate(new_column = case_when( col1 < 9 ~ ' value1 ', col1 < 12 ~ ' value2 ', col1 < 15 ~ ' value3 ', TRUE ~ ' Great '))
Ця конкретна функція переглядає значення в стовпці під назвою col1 і повертає:
- « value1 », якщо значення в col1 менше 9
- « value2 », якщо значення в col1 менше 12
- « value3 », якщо значення в col2 менше 15
- “ value4 ”, якщо жодна з попередніх умов не виконується
Зауважте, що TRUE еквівалентно оператору «else».
У наступному прикладі показано, як використовувати цю функцію на практиці.
Приклад: заява відмінка в R
Припустимо, що ми маємо наступний кадр даних у 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
Ми можемо використовувати такий синтаксис, щоб написати оператор case, який створює новий стовпець під назвою клас , значення якого визначаються значеннями в стовпці точок :
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
Інструкція case переглянула значення в стовпці балів і повернула:
- « Погано », якщо значення в колонці балів менше 9
- « ОК », якщо значення в колонці балів менше 12
- « Добре », якщо значення в колонці балів було менше 15
- « Чудово », якщо жодна з попередніх умов не виконується
Новий стовпець називається class , оскільки це ім’я ми вказали у функції mutate() .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в R:
Як використовувати оператор If із кількома умовами в R
Як написати вкладений оператор If Else у R
Як написати свою першу функцію tryCatch() у R