Hi,

I am doing a calculation on a long series using a For Loop. Here is an
example of the calculation:

accumulate=function(x){
 y=0
 z=0
 for(i in 1:length(x)){
  y=y+x[i]
  z=c(z,y)

 }
 return(z[2:length(z)])
}

> x=c(1:10)
> x
 [1]  1  2  3  4  5  6  7  8  9 10
> accumulate(x)
 [1]  1  3  6 10 15 21 28 36 45 55
>

Although the For Loop works, looping through an array is time consuming and
inefficient when the series is large. Does anyone know a faster way of doing
the same calculation? Thanks!

-- 
Tom

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to