Rでデータフレームの列名として数値を使用できない理由はありますか?
また、これを行うと、先頭に番号が付いているすべての列ヘッダーにが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を使用して呼び出す場合、これによりいくつかの問題が発生します。
data.frame
(およびread.table
)関数にはcheck.names
パラメーターがあります(デフォルトはTRUE
)
その場合
TRUE
、データフレーム内の変数の名前がチェックされ、構文的に有効な変数名であり、重複していないことが確認されます。必要に応じて、(によってmake.names
)調整されます。
差出人?make.names
:
構文的に有効な名前は、文字、数字、およびドットまたは下線文字で構成され、文字またはドットの後に数字が続かない状態で始まります。[...]
X
必要に応じて、文字「」が付加されます。