我正在尝试编写一个代码,从向量中获取每第 7 个累积和值,但是使用循环结构运行速度非常慢,因为我的数据太大了。
这是我写的代码。结果是预期的,但正如我所说,它运行非常慢:
for (i in 1:50000) {
B[i] <- cumsum(A[i:50000])[7]
}
示例: A = 4 1 2 2 6 2 6 6 1 10 5 8 6 9 1
结果必须是:
B[1] = (4+1+2+2+6+2+6) = 23
B[2] = (1+2+2+6+2+6+6) = 25
所以...
谢谢你。
基础R:
c(na.omit(filter(A, rep(1,7)))) # use stats::filter if dplyr/tidyverse is loaded
[1] 23 25 25 33 36 38 42 45 40