【发布时间】:2018-06-17 23:06:32
【问题描述】:
我创建了一个数据框 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))
我需要的是一个新列 var4,它计算每行的非 NA 值的数量(不包括 id 列)。例如,如果一行是 var1=19, var2=1, var3=NA, 那么 var4=2。我找不到在 dplyr 中执行此操作的好方法。 类似:
df %in% mutate(var4= ... )
如果有人可以帮助我,我将不胜感激。
【问题讨论】:
-
在基础 R 中:
df$var4 <- rowSums(!is.na(df[-which(names(df)=="id")]))