我可以在变量名中转义字符吗?

Mat*_*ert 9 r escaping

有时候命名变量会很有用,比如没有程序员可以命名他或她的变量.对于stoopid变量名称的约定和限制当然有一些很好的理由,但我仍然很好.特别是在像R这样的语言中,经常用于创建图形和一些带有图形的标签.因此,一些标签包含变量名称.

有没有办法在R中使用像+ b这样的变量名?或者是否有类似显示名称的东西?例如,在使用ggplot2进行分区时,这样的选项会很棒.

p_big + facet_grid(x ~ y,scales="free") +labs(x="",y="")

# with x containing a+b, d&c 
Run Code Online (Sandbox Code Playgroud)

对于任何想法提前thx!

rcs*_*rcs 10

你可以使用反引号:

R> `a + b` <- 3
R> `a + b`
[1] 3

tmp <- data.frame(1:10, rnorm(10))
names(tmp) <- c("a+b", "c&d")
ggplot(tmp, aes(`a+b`, `c&d`)) + geom_point()
Run Code Online (Sandbox Code Playgroud)

另见?Quotes.