我正在尝试返回类别为“xts”“zoo”的时间序列。我想检索时间,但取而代之的是数字。我有一个例子如下:
rtn<-c(rep(NA,3))
for(i in 1:3){
rtn[i]<-index(time_series[i])
}
返回:
[1] 13704 14049 14343
这是我希望它返回的内容:
[1] "2007-07-10" "2008-06-19" "2009-04-09"
提前感谢您的帮助。
以上是简化版。它是代码中唯一无法运行的部分。如果它有用,那么实际代码是:
green_rtn<-c(rep(NA,length(green_series_open[,1])))
for(i in 1:length(green_series_open[,1])){
green_rtn[i]<-straddles(coredata(green_series_open[i,1]),coredata(green_series_open[i,2]),
index(green_series_open[i]),index(green_series_close[i]))
}
答案 0 :(得分:1)
您应该将rtn
正确初始化为日期向量。使用@ akrun的示例数据(如果你包含了自己的reproducible example那就不错了)
rtn <- rep(as.Date(NA), 3)
library(xts)
time_series <- xts(rnorm(5), order.by=as.Date(c('2007-07-10', '2008-06-19', '2009-04-09', '2009-05-06', '2009-05-08')))
for(i in 1:3) {
rtn[i]<-index(time_series[i])
}
rtn
# [1] "2007-07-10" "2008-06-19" "2009-04-09"