【发布时间】:2020-12-06 09:06:57
【问题描述】:
我正在尝试以累积的方式总结 data.frame 中的值。
我有这个:
df <- data.frame(
a = rep(1:2, each = 5),
b = 1:10,
step_window = c(2,3,1,2,4, 1,2,3,2,1)
)
我试图在a 组中总结b 的值。诀窍是,我想要b 值的总和对应于step_window 给出的当前行之后的行数。
这是我正在寻找的输出:
data.frame(
a = rep(1:2, each = 5),
step_window = c(2,3,1,2,4,
1,2,3,2,1),
b = 1:10,
sum_b_step_window = c(3, 9, 3, 9, 5,
6, 15, 27, 19, 10)
)
我尝试使用RcppRoll 执行此操作,但收到错误Expecting a single value:
df %>%
group_by(a) %>%
mutate(sum_b_step_window = RcppRoll::roll_sum(x = b, n = step_window))
【问题讨论】:
标签: r dplyr rolling-computation