这可能很简单。
在R
,我可以用if
替换>
条件字符(例如character
)并用它执行if
statement
吗?
例如,如果if
statement
是:
ifelse(1 < 2, "T", "F")
但是我通过一个变量得到了>
条件字符:
cc <- ">"
我该怎么写:
ifelse(1 < 2, "T", "F")
用<
取代cc
?
由于它是R中的关系运算符,我们可以使用match.fun
cc <- "<"
ifelse(match.fun(cc)(1, 2), "T", "F")
#[1] "T"
这个ifelse
可以简化,但我想这只是一个例子,你想做一些更复杂的事情。
你也可以使用eval(parse..
获得所需的输出,但我不推荐它
ifelse(eval(parse(text = paste(1, cc, 2))), "T", "F")
#[1] "T"