我有一个像这样的data.frame:
category count
A 11
B 1
C 45
A 1003
D 20
B 207
E 634
E 40
A 42
A 7
B 44
B 12
每一行代表一个具有类别类型和该元素计数的特定元素。我想生成每个类别的计数频率分布,但目前这些类别是多余的。
如何检索冗余类别计数表?即我想要一张看起来像的表:
category count
A 11234
B 4005
C 100023
D 65567
E 54654
... ...
我几乎是在使用lapply:
df.nrcounts <- lapply(unique(df.counts$category),
function(x) c(category=x, count=sum(subset(df.counts, category==x)$count)))
但我似乎无法将输出强制转换为正确的数据帧。我无法完全理解这个功能。
答案 0 :(得分:2)
aggregate(df.counts$count,by=list(df.counts$category),FUN=sum)
或者
library(data.table)
setDT(df.counts)[, list(count=sum(count)), by = category]