计算dplyr中每行的非NA数值的数量

计算dplyr中每行的非NA数值的数量,r,dplyr,R,Dplyr,我创建了一个数据帧df df <- data.frame (id = 1:10, var1 = 10:19, var2 = sample(c(1:2,NA), 10, replace=T), var3 = sample(c(3:5, NA), 10, replace=T)) 如果有人能帮助我,我将不胜感激。使用select+is.na+rowsumes,select(,-id)返回id已排除的原始数据帧(),然后计算rowsumes(!is.na(…): 以R为

我创建了一个数据帧df

df <- data.frame (id = 1:10, 
    var1 = 10:19,
    var2 = sample(c(1:2,NA), 10, replace=T),
    var3 = sample(c(3:5, NA), 10, replace=T))

如果有人能帮助我,我将不胜感激。

使用
select
+
is.na
+
rowsumes
select(,-id)
返回
id
已排除的原始数据帧(
),然后计算
rowsumes(!is.na(…)
:

以R为基数:
df$var4
df %in% mutate(var4= ... )
df %>% mutate(var4 = rowSums(!is.na(select(., -id))))

#   id var1 var2 var3 var4
#1   1   10   NA    4    2
#2   2   11    1   NA    2
#3   3   12    2    5    3
#4   4   13    2   NA    2
#5   5   14    1   NA    2
#6   6   15    1   NA    2
#7   7   16    1    5    3
#8   8   17   NA    4    2
#9   9   18   NA    4    2
#10 10   19   NA   NA    1