Comment additionner des colonnes spécifiques dans R : avec des exemples



Souvent, vous souhaiterez peut-être trouver la somme d’un ensemble spécifique de colonnes dans un bloc de données dans R. Heureusement, cela est facile à faire en utilisant la fonction rowSums() .

Ce tutoriel montre plusieurs exemples d’utilisation pratique de cette fonction.

Exemple 1 : trouver la somme de colonnes spécifiques

Le code suivant montre comment créer un bloc de données avec trois colonnes et trouver la somme des première et troisième colonnes :

#create data frame
data <- data.frame(var1 = c(0, NA, 2, 2, 5),
                   var2 = c(5, 5, 7, 8, 9),
                   var3 = c(2, 7, 9, 9, 7))

#view data frame
data

  var1 var2 var3
1    0    5    2
2   NA    5    7
3    2    7    9
4    2    8    9
5    5    9    7

#find sum of first and third columns
rowSums(data[ , c(1,3)], na.rm=TRUE)

[1]  2  7 11 11 12

La façon d’interpréter le résultat est la suivante :

  • La somme des valeurs de la première ligne des première et troisième colonnes est 2 .
  • La somme des valeurs de la première ligne des première et troisième colonnes est 7 .
  • La somme des valeurs de la première ligne des première et troisième colonnes est 11 .
  • La somme des valeurs de la première ligne des première et troisième colonnes est 11 .
  • La somme des valeurs de la première ligne des première et troisième colonnes est 12 .

Vous pouvez également attribuer les sommes de lignes de ces colonnes spécifiques à une nouvelle variable dans le bloc de données :

#assign row sums to new variable named row_sum
data$row_sum <- rowSums(data[ , c(1,3)], na.rm=TRUE)

#view data frame
data

  var1 var2 var3 row_sum
1    0    5    2       2
2   NA    5    7       7
3    2    7    9      11
4    2    8    9      11
5    5    9    7      12

Exemple 2 : trouver la somme de toutes les colonnes

Il est également possible de trouver la somme de toutes les colonnes d’un bloc de données. Le code suivant montre comment procéder :

#find row sums across all columns
data$new <- rowSums(data, na.rm=TRUE)

#view data frame
data

  var1 var2 var3 new
1    0    5    2   7
2   NA    5    7  12
3    2    7    9  18
4    2    8    9  19
5    5    9    7  21

On peut voir ça:

  • La somme des valeurs de la première ligne dans les trois colonnes est 7 .
  • La somme des valeurs de la deuxième ligne dans les trois colonnes est 12 .

Et ainsi de suite.

Vous pouvez trouver plus de didacticiels R ici .

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *