[R] add variable in for loop
Stephan Kolassa
Stephan.Kolassa at gmx.de
Sat Mar 28 10:34:53 CET 2009
Hi Paul,
you do *not* want to do this, it takes too long and may lead to rounding
errors. Vectorize everything, e.g., use sum(meanrotation). And look into
?apply, and google for the "R Inferno".
And no, there is no "+="...
Good luck!
Stephan
pgseye schrieb:
> Hi,
>
> I'm learning to write some basic functions in R. For some data I have I'd
> like to be able to add a variable to itself after each iteration in a for
> loop to obtain a grandtotal for that variable so I can calculate a mean.
>
> test<-function(data){
> for (i in 1:80){
>
> meanrotation<-(abs(data[i,3]-data[i,2])+abs(data[i,4]-data[i,2])+abs(data[i,5]-data[i,2])+abs(data[i,6]-data[i,2]))/4
> cat(i,meanrotation,"\n")
> #total+=meanrotation
> }
> #print (total/80)
> }
>
> In perl there's an assignment operator variable+=variable2. Is there
> anything like this in R to do as illustrated in the code above.
>
> thanks a lot,
>
> Paul
>
> Edit - I guess the other way to do this which I just realised is to assign
> the output of the function to a vector and then do a summary(), but I don't
> know how to do this either - help is appreciated
More information about the R-help
mailing list