r语言 - 如何制作包含多个组的N的tapply样式结构?



可能非常简单,但我现在被粘住了:下面的代码基本上返回由Var2分组的Var1意味着列表(Group1的平均值:5,Group2的平均值:7,Group3的平均值:4),可以由Mean_group[GroupX]引用,我如何创建一个类似的结构,只是显示每个组中有多少情况,所以我可以像这样访问每个组的N:N_of_each_group <-属于每个组的N个案例N_of_each_group (GroupX) ?

data <- data_frame(group = c("A", "B", "C", "A", "B", "B", "B"),values = c(1,2,5,4,6,3,4))
Mean_group <- tapply(as.numeric(values, group, mean, na.rm=TRUE)

这意味着一个闪亮的应用程序和N_of_each_group应该添加到一个文本总是匹配组的给定用户是一部分。如果第一组有10个人第二组有15个人第一组的用户A应该会看到一条短信说"你们组有10个人"而组2的用户B看到的文本是"你的组里有15个人"。

Dplyr在这方面很出色:

library(dplyr)
data %>% group_by(group) %>% summarise(mean_group=mean(values, na.rm=TRUE), n_group=n())
# A tibble: 3 x 3
group mean_group n_group
<chr>      <dbl>   <int>
1 A           2.5        2
2 B           3.75       4
3 C           5          1

最新更新