数字作为数据框的列名

时间:2010-08-06 10:54:52

标签: r dataframe names

R是否有理由不允许我将数字作为数据框的列名?

另请注意,如果我执行data.frame(XX),则会在前面有数字的所有列标题中添加X

2 个答案:

答案 0 :(得分:25)

为我工作

data.frame(`1`=rnorm(3), `2`=head(letters,3), check.names=FALSE)
#        1 2
# 1 0.5019 a
# 2 1.1148 b
# 3 0.4787 c

答案 1 :(得分:19)

是的,因为R不允许对象名称以数字开头。如果您使用data.frame调用attach(),则会导致一些问题。

data.frame(和read.table)函数具有check.names参数(默认为TRUE

  

如果TRUE,则检查数据框中变量的名称,以确保它们在语法上是有效的变量名,并且不会重复。如有必要,可以调整它们(make.names),以便它们可以。

来自?make.names

  

语法上有效的名称由字母,数字和点或下划线字符组成,以字母或点开头,后面没有数字。 [...]必要时会加上字符“X”。