2013-01-01 4 views

Répondre

3

En supposant que votre trame de données s'appelle df.

apply(df,1,function(x) sum(x[seq(3,length(x),2)])) 
[1] 404 406 505 406 
+0

oui c'est facile pour seulement 7 colonnes, mais que se passe-t-il si je voudrais l'utiliser pour des matrices de différentes longueurs? – user1723765

+0

@ user1723765 solution mise à jour pour travailler avec le numéro de colonne différente –

+0

super, merci! – user1723765

4

Vous pouvez faire:

rowSums(df[,-c(1,2)][, c(TRUE, FALSE)]) 
# [1] 404 406 505 406 

[, -c(1,2)] rejette les deux premières colonnes et [, c(TRUE, FALSE)] maintient toutes les autres colonnes.

1
rowSums(df[,seq(from=3, to=ncol(df), by=2)]) 
Questions connexes