Як підсумувати стовпці на основі умови в r


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

 #sum values in column 3 where col1 is equal to 'A'
sum(df[ which (df$col1==' A '), 3])

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

 #create data frame
df <- data. frame (conference = c('East', 'East', 'East', 'West', 'West', 'East'),
                 team = c('A', 'A', 'A', 'B', 'B', 'C'),
                 points = c(11, 8, 10, 6, 6, 5),
                 rebounds = c(7, 7, 6, 9, 12, 8))

#view data frame
df

  conference team points rebounds
1 East A 11 7
2 East A 8 7
3 East A 10 6
4 West B 6 9
5 West B 6 12
6 East C 5 8

Приклад 1: додайте стовпець на основі умови

Наступний код показує, як знайти суму балів у стовпці для рядків, де команда дорівнює “A”:

 #sum values in column 3 (points column) where team is equal to 'A'
sum(df[ which (df$team==' A '), 3])

[1] 29

У наведеному нижче коді показано, як знайти суму стовпця відмов для рядків, де число балів перевищує 9:

 #sum values in column 4 (rebounds column) where points is greater than 9
sum(df[ which (df$points > 9), 4])

[1] 13

Приклад 2: додайте стовпець на основі кількох умов

Наступний код показує, як знайти суму балів у стовпці для рядків, де команда дорівнює «A» , а конференція дорівнює «East»:

 #sum values in column 3 (points column) where team is 'A' and conference is 'East'
sum(df[ which (df$team==' A ' & df$conference==' East '), 3])

[1] 29

Зверніть увагу, що оператор & означає «і» в R.

Приклад 3: додайте стовпець на основі однієї з кількох умов

Наступний код показує, як знайти суму балів у стовпці для рядків, де команда дорівнює «A» або «C»:

 #sum values in column 3 (points column) where team is 'A' or 'C'
sum(df[ which (df$team == ' A ' | df$team ==' C '), 3])

[1] 34

Зауважте, що | Оператор означає “або” в R.

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

У наступних посібниках пояснюється, як виконувати інші поширені функції в R:

Як підсумувати певні стовпці в R
Як підсумувати певні рядки в R
Як обчислити суму за групою в R

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

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