【发布时间】:2014-09-07 18:29:27
【问题描述】:
如果我们有一个向量并且想要累积它的数量,我们使用cumsum:
vec = c(0,3,3,1,1,3)
vec.sum = cumsum(vec)
vec.sum
[1] 0 3 6 7 8 11
当我们想要相反的时候呢? for 循环可以解决问题,但有没有更有效的方法来做到这一点,特别是对于大向量?
for (i in length(vec.sum):2) {
vec.sum[i] = vec.sum[i] - vec.sum[i-1]
}
vec.sum
[1] 0 3 3 1 1 3
【问题讨论】:
标签: r optimization cumulative-sum