使用R中括号的列/字段名称

时间:2014-02-12 16:08:03

标签: r

我在Windows 7上使用R版3.0.2。

我将CSV表加载到R中,并且一些列名称具有括号,例如P(A)或P(A | B)。如果我试试

 whatever<- read.csv("C:/dir/name.csv", header=TRUE);
 hist(whatever$P(A|B));

我收到错误消息

Error: unexpected symbol in "hist(whatever$P(A|B"

在R中,是否可以将列名用在括号中,还是必须将列名更改为字母数字?

2 个答案:

答案 0 :(得分:4)

read.csv()会将特殊字符转换为“。”所以'P(A | B)'列将是whatever$P.A.B.

但是,正如@ Floo0指出的那样,如果您可以使用whatever$"P(A|B)"whatever[, "P(A|B)"]访问的“P(A | B)”等列名。

答案 1 :(得分:1)

尝试

hist(whatever$"P(A|B)")

这应该可以正常工作。 或者使用whatever[,i],其中i是列P(A | B)

的列数

工作示例

whatever<-data.frame(test=rnorm(10))
colnames(whatever)<-"P(A|B)"
hist(whatever$"P(A|B)")