以下R代码返回意外输出:
times = c("2014-12-01 15:59:00", "2014-12-01 16:00:00", "2014-12-01 16:01:00")
values = c(64.23, 64.43, 64.31)
tim <- as.POSIXct(c("2014-12-01 15:59:00", "2014-12-01 16:00:00", "2014-12-01 16:01:00"), tz="GMT")
myts <- xts(values, tim, tzone="GMT")
print(myts[.indexhour(myts)==16])
我明白了:
[,1]
2014-12-01 15:59:00 64.23
虽然我期待:
[,1]
2014-12-01 16:00:00 64.43
2014-12-01 16:01:00 64.31
我认为.indexhour在某种程度上指的是我当地的时区,而我显然希望它能使用XTS对象的时区。
我有什么办法可以解决它吗?