Як порівняти три стовпці в r (з прикладом)


Ви можете використовувати такий базовий синтаксис, щоб порівняти значення трьох стовпців у R:

 df$all_matching <- df$A == df$B & df$B == df$C

Цей синтаксис створює новий стовпець під назвою all_matching , який повертає TRUE, якщо всі стовпці мають відповідні значення, інакше повертає FALSE .

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: порівняйте три стовпці в R

Припустимо, ми маємо наступний кадр даних у R із трьома стовпцями:

 #create data frame
df <- data. frame (A=c(4, 0, 3, 3, 6, 8, 7, 9, 12),
                 B=c(4, 2, 3, 5, 6, 4, 7, 7, 12),
                 C=c(4, 0, 3, 5, 5, 10, 7, 9, 12))

#view data frame
df

   ABC
1 4 4 4
2 0 2 0
3 3 3 3
4 3 5 5
5 6 6 5
6 8 4 10
7 7 7 7
8 9 7 9
9 12 12 12

Ми можемо використати наступний код, щоб створити новий стовпець під назвою all_matching , який повертає TRUE , якщо всі три стовпці збігаються в даному рядку, і FALSE , якщо вони не відповідають:

 #create new column that checks if values in all three columns match
df$all_matching <- df$A == df$B & df$B == df$C

#view updated data frame
df

   ABC all_matching
1 4 4 4 TRUE
2 0 2 0 FALSE
3 3 3 3 TRUE
4 3 5 5 FALSE
5 6 6 5 FALSE
6 8 4 10 FALSE
7 7 7 7 TRUE
8 9 7 9 FALSE
9 12 12 12 TRUE

Новий стовпець під назвою all_matching вказує, чи збігаються значення в трьох стовпцях у даному рядку.

Наприклад:

  • Усі три значення збігаються в першому рядку, тому повертається TRUE .
  • Не всі значення збігаються у другому рядку, тому повертається FALSE .
  • Усі три значення збігаються в третьому рядку, тому повертається TRUE .

І так далі.

Якщо ви хочете повернути значення, відмінні від TRUE і FALSE , ви можете вказати ці значення у функції ifelse() .

Наприклад, ми можемо використовувати наступний код, щоб повернути «Так», якщо значення в усіх трьох стовпцях збігаються, або «Ні» в іншому випадку:

 #create new column that checks if values in all three columns match
df$all_matching <- ifelse(df$A == df$B & df$B == df$C, ' Yes ', ' No ')

#view updated data frame
df

   ABC all_matching
1 4 4 4 Yes
2 0 2 0 No
3 3 3 3 Yes
4 3 5 5 No
5 6 6 5 No
6 8 4 10 No
7 7 7 7 Yes
8 9 7 9 No
9 12 12 12 Yes

Новий стовпець тепер повертає “Так” або “Ні” замість TRUE або FALSE .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в R:

Як перевірити, чи існує стовпець у кадрі даних у R
Як перевірити, чи містить стовпець рядок у R
Як додати стовпець до кадру даних у R на основі інших стовпців

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

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