Comment exécuter une fonction SUMIF dans R
Souvent, vous souhaiterez peut-être trouver uniquement la somme des lignes d’un bloc de données R qui répondent à certains critères. Heureusement, cela est facile à faire en utilisant la syntaxe de base suivante :
aggregate(col_to_sum ~ col_to_group_by, data=df, sum)
Les exemples suivants montrent comment utiliser cette syntaxe sur le bloc de données suivant :
#create data frame
df <- data.frame(team=c('a', 'a', 'b', 'b', 'b', 'c', 'c'),
pts=c(5, 8, 14, 18, 5, 7, 7),
rebs=c(8, 8, 9, 3, 8, 7, 4),
blocks=c(1, 2, 2, 1, 0, 4, 1))
#view data frame
df
team pts rebs blocks
1 a 5 8 1
2 a 8 8 2
3 b 14 9 2
4 b 18 3 1
5 b 5 8 0
6 c 7 7 4
7 c 7 4 1
Exemple 1 : exécuter une fonction SUMIF sur une colonne
Le code suivant montre comment trouver la somme des points pour chaque équipe :
aggregate(pts ~ team, data=df, sum)
team pts
1 a 13
2 b 37
3 c 14
Exemple 2 : exécuter une fonction SUMIF sur plusieurs colonnes
Le code suivant montre comment trouver la somme des points et des rebonds pour chaque équipe :
aggregate(cbind(pts, rebs) ~ team, data=df, sum)
team pts rebs
1 a 13 16
2 b 37 20
3 c 14 11
Exemple 3 : exécuter une fonction SUMIF sur toutes les colonnes
Le code suivant montre comment trouver la somme de toutes les colonnes du bloc de données pour chaque équipe :
aggregate(. ~ team, data=df, sum)
team pts rebs blocks
1 a 13 16 3
2 b 37 20 3
3 c 14 11 5
Remarque : Le point ( . ) est utilisé dans R pour représenter « toutes » les colonnes.
Ressources additionnelles
Comment exécuter une fonction COUNTIF dans R
Comment additionner des colonnes spécifiques dans R
Comment additionner des lignes spécifiques dans R