On Oct 5, 2010, at 8:41 AM, Alaios wrote:

Hello everyone
I need some advice if the following might be easier implemented.

There are n matrixes

each matrix needs to calculate one value for the rest n-1 matrixes (but not for
itself). I implemented this one by

two nested loops

for (i in c(1:length(CRX))) {

  for (j in c(1:length(CRX)))
      if (i!=j)
# where i and j are the two indexes. If i==j then is the same matrix.
          calculations()
}


Do you think there might be a more efficient R-wise way to implement this?

Does the result of "calculations()" depend on the order of the two selected matrices? If not, then you are doing twice as many calculations() as necessary and could use a test like:

if (i < j) # rather than if (i != j)

You could also create 2 way combinations with the combn function, but I don't know if that would improve the speed (and I suspect the loop is just as fast).

What does performance profiling tell you about where most of the cpu time is being spent?

--
David.



I would like to thank you in advance for your help

Best Regards
Alex




        [[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.

David Winsemius, MD
West Hartford, CT

______________________________________________
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