4

我想做类似的事情

foo = c(1, 1, 1)
bar = magic_function(foo, sum, init=0)

其中bar1 2 3,即 的部分和foo。是否有这样的功能,或者最好的方法是什么(避免for循环)?

4

1 回答 1

11

将詹姆斯的评论和我的评论结合成一个正式的答案,这里有几个选项:

> foo = c(1, 1, 1)
> cumsum(foo)
[1] 1 2 3
> Reduce("+", foo, accumulate = TRUE)
[1] 1 2 3
> Reduce("sum", foo, accumulate = TRUE)
[1] 1 2 3
于 2013-04-15T09:16:59.533 回答