我想在分组后汇总时,计算另一个因素的特定级别的数量。
在下面的工作示例中,我想计算每个组中 "male"
级别的数量。我已经尝试了很多计数、计数等方法,但找不到一种简单明了的方法来做到这一点。
df <- data.frame(Group=replicate(20, sample(c("A","B"), 1)),
Value=rnorm(20),
Factor=replicate(20, sample(c("male","female"), 1)))
df %>%
group_by(Group) %>%
summarize(Value = mean(Value),
n_male = ???)
谢谢你的帮助!
最佳答案
我们可以在 sum
logical
即 vector
上使用 Factor == "male"
。当我们执行 TRUE/FALSE
时,1/0
将被强制转换为 sum
以获取“男性”元素的频率
df %>%
group_by(Group) %>%
summarise(Value = mean(Value),
n_male = sum(Factor=="male"))
关于r - tidyverse:汇总时计算特定级别的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42955041/