在for循环中包含多个条件

时间:2011-10-13 15:13:59

标签: r for-loop conditional-statements

我试图将两个条件指定为for循环的一部分。似乎第二个for循环中的第二个条件没有被考虑。我的代码以这种方式运行:

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

你能不能告诉我这是否是R中的正确语法? 谢谢!

2 个答案:

答案 0 :(得分:7)

要回答您的问题,您需要:

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

然而,实现你想做的事情可能有更好的方法,但我需要更多细节。

答案 1 :(得分:4)

这可以解决问题:

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

您还可以根据自己的真实目的查看?combn?expand.grid