A: як групувати та рахувати за умовою


Ви можете використовувати наступний базовий синтаксис для виконання умови групування та підрахунку в R:

 library (dplyr)

df %>%
  group_by(var1) %>%
  summarize(count = sum(var2 == ' val '))

Цей конкретний синтаксис групує рядки кадру даних на основі var1 , а потім підраховує кількість рядків, де var2 дорівнює “val”.

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

Приклад: групування та підрахунок із умовою в R

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 pos=c('Gu', 'Fo', 'Fo', 'Fo', 'Gu', 'Gu', 'Fo', 'Fo'),
                 points=c(18, 22, 19, 14, 14, 11, 20, 28))


#view data frame
df

  team pos points
1 A Gu 18
2 A Fo 22
3 A Fo 19
4 A Fo 14
5 B Gu 14
6 B Gu 11
7 B Fo 20
8 B Fo 28

У наведеному нижче коді показано, як згрупувати кадр даних за командною змінною та підрахувати кількість рядків, де змінна pos дорівнює “Gu”:

 library (dplyr)

#group by team and count rows where pos is 'Gu'
df %>%
  group_by(team) %>%
  summarize(count = sum(pos == ' Gu '))

# A tibble: 2 x 2
  team count
   
1 to 1
2 B 2

З результату ми бачимо:

  • Команда A має 1 рядок, у якому стовпець пози дорівнює «Gu»
  • Команда B має 2 рядки, у яких стовпець пози дорівнює «Gu»

Ми можемо використовувати аналогічний синтаксис для групування та підрахунку з умовою числа.

Наприклад, у наведеному нижче коді показано, як згрупувати за змінною команди та підрахувати кількість рядків, де значення змінної Points перевищує 15:

 library (dplyr)

#group by team and count rows where pos is 'Gu'
df %>%
  group_by(team) %>%
  summarize(count = sum(points > 15 ))

# A tibble: 2 x 2
  team count
   
1 to 3
2 B 2

З результату ми бачимо:

  • Команда А має 3 рядки, де стовпчик очок більше 15
  • Команда B має 2 рядки, у яких стовпчик очок більше 15

Ви можете використовувати подібний синтаксис для групування та підрахунку з будь-якою конкретною умовою.

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

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

Як порахувати значення в стовпці з умовою в R
Як вибрати перші N значень за групою в R

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

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