在数据框中选择列时,我偶然发现了$
运算符的令人惊讶的行为:
gg <- data.frame(faa = 1:10, gaa = rep(c("x", "y"), 5))
gg$f
# [1] 1 2 3 4 5 6 7 8 9 10
我一直认为你必须使用$
的确切列名,也许是因为它是"["
的工作原理。似乎$
运算符会猜测列名的其余部分,因为没有其他列以f开头。
ggg <- data.frame(faa = 1:10, gaa = rep(c("x", "y"), 5), faagaa = 1:10)
ggg$f
# NULL
ggg$faag
# [1] 1 2 3 4 5 6 7 8 9 10