Come sommare le colonne in base a una condizione in r


È possibile utilizzare la seguente sintassi di base per sommare le colonne in base alla condizione in R:

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

I seguenti esempi mostrano come utilizzare in pratica questa sintassi con il seguente frame di dati:

 #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

Esempio 1: aggiungi una colonna in base a una condizione

Il codice seguente mostra come trovare la somma della colonna dei punti per le righe in cui la squadra è uguale ad “A”:

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

[1] 29

Il codice seguente mostra come trovare la somma della colonna dei rimbalzi per le righe in cui i punti sono maggiori di 9:

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

[1] 13

Esempio 2: aggiungi una colonna in base a più condizioni

Il codice seguente mostra come trovare la somma della colonna dei punti per le righe in cui la squadra è uguale ad “A” e la conferenza è uguale a “Est”:

 #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

Nota che l’operatore & significa “e” in R.

Esempio 3: aggiungere una colonna in base a una delle diverse condizioni

Il codice seguente mostra come trovare la somma della colonna dei punti per le righe in cui la squadra è uguale ad “A” o “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

Si noti che | L’operatore significa “o” in R.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre funzioni comuni in R:

Come sommare colonne specifiche in R
Come sommare righe specifiche in R
Come calcolare la somma per gruppo in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *