聚合数据帧-计数原始数据帧中的行数

时间:2019-02-28 15:16:18

标签: r

我有一个大型数据框并对其进行汇总-在汇总数据框中,我想添加一列,其中列的行数包含原始数据框中匹配表达式的重复行数,例如

df1<-data.frame(A = c("a","b","a","a","b","c"), B = 1:12)
df2<-aggregate(df1$B, by=list(category=df1$A), FUN=sum)

,并且在此汇总数据框中,我想添加一列“计数”(指原始数据帧),即

  category  x count
1        a 34    6
2        b 26    4
3        c 18    2 

在我尝试过的其他尝试中

df2$count<-nrow(df1[df1$A == df2$category,])

哪个当然行不通...

任何帮助将不胜感激!谢谢!

1 个答案:

答案 0 :(得分:0)

使用tidyverse,可以更轻松地完成此操作。按“ A”分组后,获得“ B”的sum并用n()

计数
library(dplyr)
df1 %>% 
    group_by(category = A) %>%
    summarise(x = sum(B), count = n())