Як написати інструкцію в 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

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *