Есть ли причина, по которой R не позволяет мне иметь число в качестве имени столбца моего информационного кадра?
Также заметил, что, если я делаю data.frame(XX), он добавляет X ко всем заголовкам столбцов, которые имеют номера спереди.
data.frame(XX)
X
у меня работает
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
Да, потому что R не позволяет именам объектов начинаться с цифр. Если вы вызовете attach() с data.frame, это вызовет некоторые проблемы.
attach()
data.frame (и read.table) имеет параметр check.names (по умолчанию TRUE)
data.frame
read.table
check.names
TRUE
Если TRUE, то имена переменных во фрейме данных проверяются, чтобы убедиться, что они являются синтаксически допустимыми именами переменных и не дублируются. При необходимости они корректируются (на make.names) так, чтобы они были.
make.names
С ?make.names:
?make.names
Синтаксически допустимое имя состоит из букв, цифр и точки или символов подчеркивания и начинается с буквы или точки, за которой не следует число. [...] Символ "X" добавляется в случае необходимости.