sum cells of certain columns for each row

user1807857 picture user1807857 · Nov 20, 2012 · Viewed 75.5k times · Source

I would like to calculate sums for certain columns and then apply this summation for every row. Unfortunately, I can only get to the first step. How do I now make it happen for each row? I know that R doesn't need loops; what are good approaches?

My matrix (zscore) looks like this:

   a    b    c    t   y
1  3    4    7    7   4

2  4    56   6    6   4

3  3    3    2    1   7

4  3    88   9    9   9

Now I would want to calculate the row sum for each row, based on some of the columns. For one row it could look like this:

f1 <- sum(zscore[1,1:2], zscore[1,3], zscore[1,5])

How do I do that now for each row?

Answer

alestanis picture alestanis · Nov 20, 2012

You could do something like this:

summed <- rowSums(zscore[, c(1, 2, 3, 5)])