[R] any alternatives for complex for-loops?

Kinoko andzsinszan at gmail.com
Wed Nov 12 06:48:11 CET 2008


Thanks for the replies

Sorry for being unclear.

I am asking if there is a way to process a vector in a way
that uses references to other elements of the same vector.
And doing this without a for-loop.

Here is a running code:

<code>
complexFn <- function(a,b){
  c <- (a+b)/2
  return(c)
}

x <- 1:10
y <- rep(NA, length(x))

for (i in 1:length(x)){
    if(i>1){
        y[i] = complexFn(x[i-1], x[i])
    }
}
print(y)
</code>

And here is another attempt without the for-loop.

<code>
x <- 1:10
x1 <- c(NA, x)
length(x1)<-length(x)

y<-mapply(complexFn,x,x1)
print(c(y))
</code>

If someone could tell me the normal/elegant/effective/R way of
doing this kind of vector processing, that would highly appreciated.

best,

gabor



More information about the R-help mailing list