我可以转义变量名称中的字符吗?
问题描述:
有时候给变量命名是非常有用的,例如程序员不应该为变量命名。当然,对stoopid变量名称的约定和限制有一些很好的理由,但我仍然很好。特别是在像R这样的语言中,经常用它来创建图形和一些带有图形的标签。因此,一些标签包含变量名称。我可以转义变量名称中的字符吗?
有没有办法在R中使用类似a + b的变量名?或者有什么像显示名称?例如,在使用ggplot2时,这样的选项会很好。
p_big + facet_grid(x ~ y,scales="free") +labs(x="",y="")
# with x containing a+b, d&c
thx任何想法提前!
答
您可以使用反引号:
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()
也?Quotes
见。
Thx一堆。我每天都在学习多少(甚至是多大)东西,真是太棒了! – 2010-08-26 11:16:58