多くの変換を適用する必要があるxts数値行列があります。このthreadによると、transform()によって返されたオブジェクトは、as.xts()の呼び出しでラップされます(xtsは独自の変換バージョンを持たず、zooは新しいオブジェクトを返します)。transform/as.xtsを呼び出した後のインデックスエラー
私はいくつかのサンプルデータに変換を試みたし、正常に動作するようですが、私は自分のデータでそれを実行したとき、私はこのエラーを取得:
Browse[2]> class(myxts)
[1] "xts" "zoo"
Browse[2]> mode(myxts)
[1] "numeric"
Browse[2]> str(myxts)
An 'xts' object from 2011-07-22 09:30:00 to 2011-12-19 16:00:00 containing:
Data: num [1:11606, 1:19] 0 158300 157700 157600 157900 ...
- attr(*, "dimnames")=List of 2
..$ : NULL
..$ : chr [1:19] "Open" "High" "Low" "Close" ...
Indexed by objects of class: [POSIXlt,POSIXt] TZ:
xts Attributes:
NULL
Browse[2]> head(myxts['2011-07-22'])
Open High Low Close
2011-07-22 09:30:00 0 0 0 0
2011-07-22 09:31:00 158300 158400 157600 157800
2011-07-22 09:32:00 157700 157700 157500 157700
2011-07-22 09:33:00 157600 157900 157599 157900
2011-07-22 09:34:00 157900 158100 157800 158100
2011-07-22 09:35:00 158000 158400 157900 158200
Browse[2]> n
debug: myxts = as.xts(transform(myxts, Open = ifelse(Open ==
0, NA, Open), Close = ifelse(Close == 0, NA, Close), High = ifelse(High ==
0, NA, High), Low = ifelse(Low == 0, NA, Low)))
Browse[2]> class(myxts)
[1] "xts" "zoo"
Browse[2]> head(myxts['2011-07-22'])
Error in function (year = 1970, month = 1, day = 1, hour = 0, min = 0, :
unused argument(s) (tz1 = "", tz2 = "EST", tz3 = "EDT")
Browse[2]> str(myxts)
An 'xts' object from 2011-07-22 09:30:00 to 2011-12-19 16:00:00 containing:
Data: num [1:11606, 1:19] NA 158300 157700 157600 157900 ...
- attr(*, "dimnames")=List of 2
..$ : NULL
..$ : chr [1:19] "Open" "High" "Low" "Close" ...
Indexed by objects of class: [POSIXlt,POSIXt] TZ:
TZ: EST
TZ: EDT
xts Attributes:
NULL
NOTE
あります2 TZ:transform()の呼び出し後にstr(myxts)の出力にEST/EDTフィールドが追加されました。