首页 > 解决方案 > 在R中解析字符串条件

问题描述

我有一个字符串,并希望 R 将其视为要在 if 循环中使用的逻辑条件。

condition <- "df$a > 2"

如何强制 R 将条件视为逻辑,以便此 if 语句有效?

if(condition){
  print(df$a)
}

标签: rstringif-statement

解决方案


您可以使用 parse(text = condition) 将字符串解析为表达式。然后使用 eval 来评估表达式:

a <- 4
condition <- "a > 2"

if (eval(parse(text = condition))) {
  print(a)
}

推荐阅读