[R] If...while...or what else??

Duncan Murdoch
Tue, 13 Jan 2009 13:57:29 -0000

On 1/13/2009 8:20 AM, Niccol? Bassani wrote:
> Dear R users,I come to you with a quite silly question I think, but I hope
> you can answer me...
> That is, I've got some problems in using the if and while conditions in
a
> loop.
> Substantially, I want to select rows in a dataset depending on an index
> variable (suppose it ranges from 1 to 5), so to make a specific analysis
> (homemade of course) on thie new dataset. Mi first tought has been to do a
> double loop like this:
>
> for i in 1:5{
> for j in (i+1):5{
> data = dataset[(variable==i) | (variable==j),]
> ##analysis
> ##analysis
> }
> }
>
> This way I should select all the couples only once (gaining in efficiency I
> hope). The fact is that this arrangement has a problem: that j ends up with
> ranging from 2 to 6, not from to 2 to 5. So when I do a subsetting on the
> dataset to obtain only the rows corresponding to the values of i and j I
> want, when the loop comes to j = 6 I have an error, of course.
> What I want to know is: how can I use the if or while condition in such a
> loop to avoid the routine doing the computations for this case? I.e., can I
> tell somehow R "Hey, if j=6, let it go and move on with the other
> computations"?
> Or maybe you can see a faster and better way of using the for conditions??

Use "for (i in 1:4)".

Duncan Murdoch

>
> I hope I made myself clear, if not I'll carify myself!!
>
> Thanks in advance
> Niccol?
>
> 	[[alternative HTML version deleted]]
>
>
>
> ------------------------------------------------------------------------