假设我在 R 中有以下表达式:
someExpr <- substitute(a+2*b)
现在我想查看它的子表达式,例如 2*b
并生成字符串 "2*b"
。我通过以下方式访问子表达式:
someExpr[[3]]
2 * b
类型是语言,类是call
typeof(someExpr[[3]])
[1] "language"
我尝试使用toString
和as.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/