聚合函数分组,计数和平均值

时间:2016-06-19 13:34:49

标签: r

我有一个包含三个变量a b和c的数据集。

a 45 345
a 45 345
a 34 234
a 35 456
b 45 123
b 65 345
b 34 456
c 23 455
c 54 567
c 34 345
c 87 567
c 67 345

我想通过a和b聚合数据集并给出计数和均值。请找到以下输出。是否有任何功能可以同时进行。

A   B  numobs   c
a   34  1      234  
a   35  1      456  
a   45  2      345  
b   34  1      456  
b   45  1      123  
b   65  1      345  
c   23  1      455  
c   34  1      345  
c   54  1      567  
c   67  1      345  
c   87  1      567

numobs是计数,c是平均值

1 个答案:

答案 0 :(得分:2)

我们可以使用dplyr

library(dplyr)
df1 %>%
   group_by(A, B) %>%
   mutate(numbobs =n(), C= mean(C))  

data.table

library(data.table)
setDT(df1)[, c("numbobs", "C") := .(.N, mean(C)) , by = .(A, B)]