21

Rでデータフレームの列名として数値を使用できない理由はありますか?

また、これを行うと、先頭に番号が付いているすべての列ヘッダーにがdata.frame(XX)追加されることに注意してください。X

4

2 に答える 2

31

私のために働く

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
于 2010-08-06T13:19:32.740 に答える
24

はい。Rではオブジェクトの名前を数字で始めることはできないためです。attach()data.frameを使用して呼び出す場合、これによりいくつかの問題が発生します。

data.frame(およびread.table)関数にはcheck.namesパラメーターがあります(デフォルトはTRUE

その場合TRUE、データフレーム内の変数の名前がチェックされ、構文的に有効な変数名であり、重複していないことが確認されます。必要に応じて、(によってmake.names)調整されます。

差出人?make.names

構文的に有効な名前は、文字、数字、およびドットまたは下線文字で構成され、文字またはドットの後に数字が続かない状態で始まります。[...]X必要に応じて、文字「」が付加されます。

于 2010-08-06T10:57:08.100 に答える