XTS オブジェクトを作成し、そのオブジェクトの存続期間中にさまざまな cbind 操作を実行する R コードがあります。一部の列には「adx-1」などの名前が付いています。別の cbind() 操作が実行されるまでは問題ありません。その時点で、「-」文字を含む列はすべて「.」に変更されます。したがって、「adx-1」は「adx.1」になります。
再現するには:
x = xts(order.by=as.Date(c("2014-01-01","2014-01-02")))
x = cbind(x,c(1,2))
x
..2
2014-01-01 1
2014-01-02 2
colnames(x) = c("adx-1")
x
adx-1
2014-01-01 1
2014-01-02 2
x = cbind(x,c(1,2))
x
adx.1 ..2
2014-01-01 1 1
2014-01-02 2 2
これは数字だけではありません。「test-text」も「test.text」に変更します。複数のダッシュも変更されます。「test-text-two」は「test.text.two」に変更されます。
なぜこれが起こるのか、可能であればそれを止める方法を誰かが説明してもらえますか?
もちろん、命名スキームを変更することもできますが、変更する必要がない場合は変更することをお勧めします。
ありがとう!