【发布时间】:2015-01-23 22:00:39
【问题描述】:
我有一个这样的数据集:
df = data.frame(group = c(rep('A',4), rep('B',3)),
subgroup = c('a', 'b', 'c', 'd', 'a', 'b', 'c'),
value = c(1,4,2,1,1,2,3))
group | subgroup | value
------------------------
A | a | 1
A | b | 4
A | c | 2
A | d | 1
B | a | 1
B | b | 2
B | c | 3
我想要的是获得每个组中每个子组的值的百分比,即输出应该是:
group | subgroup | percent
------------------------
A | a | 0.125
A | b | 0.500
A | c | 0.250
A | d | 0.125
B | a | 0.167
B | b | 0.333
B | c | 0.500
以 A 组为例,A 子组:值为 1,整个 A 组的总和为 8(a=1,b=4,c=2,d=1) - 因此 1/8 = 0.125
到目前为止,我只找到了相当简单的聚合,例如 this,但我不知道如何执行“除以子组内的总和”部分。
【问题讨论】:
标签: r aggregate percentage