R:dplyr。变异对值为0的行中的列进行计数的列

R:dplyr。变异对值为0的行中的列进行计数的列,r,dplyr,R,Dplyr,给定以下data.frame,A: V1 V2 V3 V4 V5 V6 1 0.0000000 0.000000 0.0000000 0.1816416 0.0000000 0.1796779 2 0.1889351 0.000000 0.0000000 0.0000000 0.0000000 0.0000000 3 0.0000000 0.000000 0.1539683 0.0000000 0.000000

给定以下
data.frame
A

         V1       V2        V3        V4        V5        V6
1 0.0000000 0.000000 0.0000000 0.1816416 0.0000000 0.1796779
2 0.1889351 0.000000 0.0000000 0.0000000 0.0000000 0.0000000
3 0.0000000 0.000000 0.1539683 0.0000000 0.0000000 0.1983812
4 0.0000000 0.155489 0.1869410 0.0000000 0.0000000 0.0000000
5 0.0000000 0.000000 0.0000000 0.0000000 0.1739382 0.0000000
如何创建一个新列来计算行中非零值项的数量?期望输出:

         V1       V2        V3        V4        V5        V6  full_tally
1 0.0000000 0.000000 0.0000000 0.1816416 0.0000000 0.1796779  2
2 0.1889351 0.000000 0.0000000 0.0000000 0.0000000 0.0000000  1
3 0.0000000 0.000000 0.1539683 0.0000000 0.0000000 0.1983812  2
4 0.0000000 0.155489 0.1869410 0.0000000 0.0000000 0.0000000  2
5 0.0000000 0.000000 0.0000000 0.0000000 0.1739382 0.0000000  1
创建玩具的代码data.frame

set.seed(1)
a = runif(n=30, min=0, max=0.2)
a[a<0.15] = 0
A = as.data.frame(matrix(a,              
           nrow=5,         
           ncol=6,         
           byrow = TRUE))

但它只查看每行的第一列值。

不是一个
dplyr
解决方案,但效果很好

A$full_tally <- rowSums(A != 0)

A
#          V1       V2        V3        V4        V5        V6 full_tally
# 1 0.0000000 0.000000 0.0000000 0.1816416 0.0000000 0.1796779          2
# 2 0.1889351 0.000000 0.0000000 0.0000000 0.0000000 0.0000000          1
# 3 0.0000000 0.000000 0.1539683 0.0000000 0.0000000 0.1983812          2
# 4 0.0000000 0.155489 0.1869410 0.0000000 0.0000000 0.0000000          2
# 5 0.0000000 0.000000 0.0000000 0.0000000 0.1739382 0.0000000          1
A$full_理货这与dplyr非常相似-
A$full_tally <- rowSums(A != 0)

A
#          V1       V2        V3        V4        V5        V6 full_tally
# 1 0.0000000 0.000000 0.0000000 0.1816416 0.0000000 0.1796779          2
# 2 0.1889351 0.000000 0.0000000 0.0000000 0.0000000 0.0000000          1
# 3 0.0000000 0.000000 0.1539683 0.0000000 0.0000000 0.1983812          2
# 4 0.0000000 0.155489 0.1869410 0.0000000 0.0000000 0.0000000          2
# 5 0.0000000 0.000000 0.0000000 0.0000000 0.1739382 0.0000000          1