[R] how to create a simple loop ?

David Winsemius dwinsemius at comcast.net
Sun Dec 27 17:00:28 CET 2009


On Dec 27, 2009, at 9:15 AM, Edouard Tallent wrote:

> Hi everyone. And, Merry Xmas !
> I have a 5-row matrix called “data”. There are headers.
> it look like this :
> Row 1   Row2    Row3    Row4    Row5
> Line1     …            …            …            …
> Line2     …            …            …            …
> Line3     …            …            …            …
>> Line 1838             …            …            …            …
> I want to calculate several simple arithmetic means for Row5, that  
> is from Line173 to Line193, from Line434 to Line455, from Line699 to  
> Line724, from Line955 to Line977
> A simple way is to individually compute these means. The first one  
> (Line173 to Line193) is then obtained by :
>> mean(data[173:193,5], na.rm = TRUE)
> That’s right ! But, I aim to automate this calculation by creating a  
> loop.
> I tried many things, but I have been unsuccessful at using the ‘for’  
> loop function.

Generally it would be better to include the failed efforts in the form  
of executable R code that would let the readership see, for instance,  
the list (or vector, or matrix) of intervals that you were trying to  
use in the for loops.

> Please, don’t explain things too hard as it is often the case that  
> people wants to help but gets into too much sophistication.
> Someone can write that little code for this example ?

? No executable example offered.

> Or suggest functions ?

A for loop would seem sensible. The sapply function might be used, or  
perhaps the apply function. It really depends on the details of how  
the intervals are represented (which you have not provided.)
>
> and provide commented, minimal, self-contained, reproducible code.
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
David Winsemius, MD
Heritage Laboratories
West Hartford, CT




More information about the R-help mailing list