Zahlen als Spaltennamen von Datenrahmen
Frage
Gibt es einen Grund, warum R wird mir nicht erlauben, eine Zahl als Spaltenname meines Datenrahmen zu haben?
Auch bemerkt, dass, wenn ich tun data.frame(XX)
es eine X
an alle die Spaltenüberschriften ergänzt, die Zahlen auf der Vorderseite haben.
Lösung
Ja, weil R nicht Namen von Objekten ermöglicht, mit Zahlen zu starten. Wenn Sie Anruf attach()
mit dem data.frame sind, würde dies einige Probleme verursachen.
data.frame
(und read.table
) Funktion hat den check.names
Parameter (default ist TRUE
)
Wenn
TRUE
dann die Namen der Variablen im Datenrahmen werden geprüft, um sicherzustellen, dass sie syntaktisch gültige Variablennamen sind und nicht dupliziert. Bei Bedarf sie angepasst werden (durchmake.names
), so dass sie sind.
Von ?make.names
:
Ein syntaktisch gültige Name besteht aus Buchstaben, Zahlen und der Punkt oder Unterstreichen und beginnt mit einem Buchstaben oder dem Punkt nicht gefolgt von einer Nummer. [...] Das Zeichen "
X
" vorangestellt, wenn nötig.
Andere Tipps
Arbeiten für mich
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