变量名称包括点的问题

时间:2018-06-19 07:56:40

标签: r dataframe

调用dataframes列名时我不明白。 例如:

x1<- data.frame(a.variable=c('1','2','3'), b.variable=c('10','20','30'))
x1$a.variable 
# returns [1] 1 2 3 which makes sense

然而,下面这一行对我来说并不合理,因为列&#34; a&#34;不存在。

x1$a
# returns [1] 1 2 3

有人可以帮我理解如何避免这个问题吗?谢谢!

1 个答案:

答案 0 :(得分:4)

上述行为描述了$[[之间的一个重要区别。 $进行部分匹配,而[[则不进行(默认情况下)。但是,可以使用exact参数控制此操作,请参阅help(`[`)

x1[["a"]]
# NULL

x1[["a", exact = FALSE]]
# [1] "1" "2" "3"