r - 使用中缀表示法将语言类型转换为 R 中的字符串

标签 r string infix-notation

假设我在 R 中有以下表达式:

someExpr <- substitute(a+2*b)

现在我想查看它的子表达式,例如 2*b 并生成字符串 "2*b"。我通过以下方式访问子表达式:

someExpr[[3]]
2 * b

类型是语言,类是call

typeof(someExpr[[3]])
[1] "language"

我尝试使用toStringas.character天真地转换它,但后来我总是得到前缀顺序:

toString(someExpr[[3]])
[1] "*, 2, b"
as.character(someExpr[[3]])
[1] "*" "2" "b"

是否可以获取中缀表示法的字符串?

最佳答案

您可以使用deparse:

someExpr <- substitute(a+2*b)
result<-deparse(someExpr[[3]])
result
[1] "2 * b"

str(result)
chr "2 * b"

关于r - 使用中缀表示法将语言类型转换为 R 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33496319/

相关文章:

java - 在 Java 和 R 之间工作

c - 使用C替换文件中的字符串

c# - 拆分大小小于 1MB 的字符串

string - 如何在 swift 3.0 中连接多个可选字符串?

haskell - ':..' 在 Haskell 中意味着什么?

c - 中缀到后缀转换的输出中未知字符代替运算符

r - 从连接的字符串调用变量

r - prop.table 中的折叠列

c - 中缀到后缀

RSelenium - 使用 phantom.js 下载文件