我有一个数据集,不幸的是我的dataframe
中的一些列标签包含符号( - 或+)。这似乎并不理会dataframe
,但是当我尝试绘图这跟qplot
它将引发我一个错误:在qplot中使用带有数据帧符号的列名称
x <- 1:5
y <- x
names <- c("1+", "2-")
mydf <- data.frame(x, y)
colnames(mydf) <- names
mydf
qplot(1+, 2-, data = mydf)
,如果我用引号将列名会只给我一个类别(或这样的话,它会给我一个“1+”与“2-”的情节,中间有一个点)。
可以轻松做到这一点吗?我看着aes_string,但不太明白它(至少不足以让它工作)。
在此先感谢。
P.S.我在网上搜索了一个解决方案,但无法找到任何有助于我的事情(这可能是由于某些方面我不明白),所以我认为这可能是因为这是一个完全延迟的命名方案,我有:p。
或使用'名字(是myDF)< - make.names(名称(myDF上))',如果你不介意的话,使用R的默认规则,这样的消毒。 – 2013-02-17 17:47:02
@BenBolker优秀!!如果他有类似'make.names(c('a +','a - '))'的话,这可能不起作用。 – agstudy 2013-02-17 17:49:40
是的,虽然这失败(=导致相同的列名称)与您的解决方案以及... – 2013-02-17 17:52:34