Comment obtenir rowSums pour les colonnes sélectionnées dans la R
Je suis un newbie de R et de demander de l'aide pour calculer la somme de la colonne sélectionnée pour chaque ligne. Mon simple trame de données est comme ci-dessous.
data = data.frame(location = c("a","b","c","d"),
v1 = c(3,4,3,3), v2 = c(4,56,3,88), v3 =c(7,6,2,9), v4=c(7,6,1,9),
v5 =c(4,4,7,9), v6 = c(2,8,4,6))
Je veux somme des colonnes V1 à V3 et V4 à la V6 pour mon chaque ligne dans un nouveau bloc de données.
x1 x2
a 14 13
b 66 18
c
d
J'ai fait quelque chose comme ci-dessous.
rowSums(data[,2:4][,5:7])
Mais quelque chose doit être mal dans mes codes. Merci d'avance pour toute aide.
Vous devez vous connecter pour publier un commentaire.
Ici est une solution simple à l'aide de
apply
.résultat:
Mon sens serait d'utiliser dply:
résultat:
OK, si vous voulez un distinct dataframe:
data.frame
data.frame
comme ceux que vous pouvez voir dans les autres réponsesSpécifiant les deux sommations de manière explicite:
Nous pouvons
split
le jeu de données en unlist
et ensuite utiliserReduce
avecf="+"
.Reduce
. Il fait la somme de chaque élément dans une ligne particulière des données.cadre.