如果R中的语句执行了错误的语句

时间:2014-08-20 19:42:33

标签: r if-statement

我是R.的新手。我的条件是假的

> mydata[[1,7]]==3.0
[1] FALSE

但是,当我对它使用'if condition'时,即使条件为false,if条件下的语句也会被执行。你能告诉我我错过了什么吗?

代码 -

rm(list = setdiff(ls(), lsf.str()))
mydata = read.table("path/file",header = TRUE);

if(mydata[[1,7]]==3.0)          #false statement
  {
  brit_W1<-mydata[[1,5]]        
  }

控制台 -

> brit_W1
[1] 333

我也用调试器检查了这个(这表明正在执行if下的语句)。我多次清除所有变量以删除以前的值,但没有用。

我的数据

GRID    I    J    K      BRITTSME      SWETSMEB      USERPROR
ROOT    1    1    1      333.000         56.000         0.000

1 个答案:

答案 0 :(得分:0)

我认为,只需使用rm(list=ls())清除所有本地创建的对象,然后再次运行。如果问题仍然存在,请同时指定您的数据框。

您始终可以使用ls()查看这些对象。如果您只想删除一些对象(a,b和c),请执行rm(a,b,c)