整数のベクトルがあるとしましょう:
> a<-sample(1:100,10)
> a
[1] 13 23 97 70 63 32 82 31 15 36
そして、このベクトルの累積値を含むベクトルが必要です。つまり、ベクトル
13 36 133 203 266 298 380 411 426 462が必要です。
これを実現する 1 つの方法は、for ループを使用することです。apply/lapply/sapply/... を使用することを好みますが、これを行うために考えられる唯一の方法は次のとおりです。
sapply(1:length(a), function(x) {sum(a[1:x])})
[1] 13 36 133 203 266 298 380 411 426 462
これは機能しますが、これを行うためのより良い方法があるかどうか疑問に思っていました。ある?
(これは悪い例かもしれませんが、一般的に、現在の要素に対するこれらの要素の位置がわかっている場合、反復されているリストの要素にアクセスする方法はありますか?)