Мой вопрос включает в себя суммирование значений по нескольким столбцам фрейма данных и создание нового столбца, соответствующего этому суммированию, с помощью dplyr
. Записи данных в столбцах двоичные (0,1). Я думаю о разумном значении функции summarise_each
или mutate_each
dplyr
. Ниже приведен минимальный пример кадра данных:
library(dplyr)
df=data.frame(
x1=c(1,0,0,NA,0,1,1,NA,0,1),
x2=c(1,1,NA,1,1,0,NA,NA,0,1),
x3=c(0,1,0,1,1,0,NA,NA,0,1),
x4=c(1,0,NA,1,0,0,NA,0,0,1),
x5=c(1,1,NA,1,1,1,NA,1,0,1))
> df
x1 x2 x3 x4 x5
1 1 1 0 1 1
2 0 1 1 0 1
3 0 NA 0 NA NA
4 NA 1 1 1 1
5 0 1 1 0 1
6 1 0 0 0 1
7 1 NA NA NA NA
8 NA NA NA 0 1
9 0 0 0 0 0
10 1 1 1 1 1
Я мог бы использовать что-то вроде:
df <- df %>% mutate(sumrow= x1 + x2 + x3 + x4 + x5)
но это будет связано с записью имен каждого из столбцов. У меня есть 50 столбцов. Кроме того, имена столбцов меняются при разных итерациях цикла, в котором я хочу реализовать это поэтому я хотел бы попытаться избежать необходимости указывать имена столбцов.
Как я могу сделать это наиболее эффективно? Будем очень благодарны любой помощи.