sum cells of certain columns for each row

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?


You could do something like this:

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

The summation of all individual rows can also be done using the row-wise operations of dplyr (with col1, col2, col3 defining three selected columns for which the row-wise sum is calculated):

library(tidyverse)

df <- df %>% 
    rowwise() %>% 
    mutate(rowsum = sum(c(col1, col2,col3)))