Including multiple conditions in for-loop

16,967

Solution 1

To answer your question, you need:

for (i in 1:nrow(mydata)) {
   for (j in 1:nrow(mydata) ) {
       if(j != i) {
         Statements....
       }
    }
    Statements...
 }

However, there is probably a nicer way achieving what you want to do, but I would need more details.

Solution 2

This could do the trick:

for (i in seq(nrow(mydata)))
{
 for (j in seq(nrow(mydata))[-i])
 {
       Statements....
 }
 Statements...
}

You could also take a look at ?combn or ?expand.grid depending on your real purpose.

Share:
16,967
user969524
Author by

user969524

Updated on August 02, 2022

Comments

  • user969524
    user969524 over 1 year

    I am trying to specify two conditions as a part of a for loop. It seems like the second condition in the second for loop is not being considered. My code runs this way:

    for (i in 1:nrow(mydata))          {
     for (j in 1:nrow(mydata) && j!=i )    {
           Statements....
     }
     Statements...
     }
    

    Could you please tell me if this is the right Syntax in R? Thanks!