dplyr计算条件中变量的流行程度

时间:2017-07-21 17:22:08

标签: r dplyr

我是dplyr世界的新手 - 很抱歉,如果问题听起来很简单, 基本上,我有兴趣计算每列大于0.5的条目数。如果它们低于0.5,我认为它们为零。我不介意有一个存储这个数字的向量。

这是示例

messy <- data.frame(samples = c("s1", "s2", "s3", "s4"),
                    o1 = c(0.5, 0.7, 0.8, 0.6),
                    o2 = c(0.2, 0.8, 0.8, 0.1),
                    o3 = c(0.9, 0.2, 0.0, 0.1),
                    o4 = c(0.1, 0.6, 0.4, 0.4))
bb <- gather(messy, otu, counts, o1:o4)

bb %>% filter(counts > 0.5) %>% group_by(otu) %>% summarize(fre=n())
bb$fre/4

**更新, 我相信示例中的代码是我想要的。

1 个答案:

答案 0 :(得分:1)

你可以colSums(messy > 0.5)。 这不使用 dplyr ,但它非常简单有效。