【发布时间】:2020-11-26 13:06:02
【问题描述】:
我正在尝试计算每个组内n 和sum(n) 之间的比率。我知道我离解决方案不远了。
数据:
df_rld %>%
select(type, run_length) %>%
mutate(run_length = as.numeric(run_length)) %>%
group_by(type, run_length) %>%
count(run_length)
type | run_length | n
---------------------------
A | 15 | 1
B | 24 | 3
B | 26 | 7
C | 27 | 10
C | 28 | 2
我想要什么:
type | run_length | n | ratio
-----------------------------------------
A | 15 | 1 | 1 / 1 = 1
B | 24 | 3 | 3 / (3+7) = 0.3
B | 26 | 7 | 7 / (3+7) = 0.7
C | 27 | 10 | 10 / (10+2) = 0.83
C | 28 | 2 | 2 / (10+2) = 0.17
比率分母是n按组的总和,但我不知道如何计算。使用 group_by 我可以设法得到所有 n 的总和,因此由于某种原因,比率等于 1。为简单起见,我想在不加入表格的情况下这样做。
【问题讨论】:
标签: r dplyr group-by aggregate