tidyverse:汇总时统计特定级别的数量
tidyverse: count number of a specific level when summarizing
我想在分组后总结时,统计另一个因素的特定水平的数量。
在下面的工作示例中,我想计算每个组中 "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 = ???)
感谢您的帮助!
我们可以在 logical
vector
上使用 sum
,即 Factor == "male"
。当我们执行 sum
时,TRUE/FALSE
将被强制转换为 1/0
以获得 'male' 元素的频率
df %>%
group_by(Group) %>%
summarise(Value = mean(Value),
n_male = sum(Factor=="male"))
我想在分组后总结时,统计另一个因素的特定水平的数量。
在下面的工作示例中,我想计算每个组中 "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 = ???)
感谢您的帮助!
我们可以在 logical
vector
上使用 sum
,即 Factor == "male"
。当我们执行 sum
TRUE/FALSE
将被强制转换为 1/0
以获得 'male' 元素的频率
df %>%
group_by(Group) %>%
summarise(Value = mean(Value),
n_male = sum(Factor=="male"))