我的数据框的时间序列价格(pt)如下所示:
head(MyData)
A B C
2005-07-29 66.82 41.80 372.0
2005-08-01 68.94 42.70 373.0
2005-08-02 70.22 43.75 379.2
2005-08-03 70.79 43.75 385.6
2005-08-04 70.42 44.10 390.0
2005-08-05 69.84 43.60 386.0
考虑到3天(w = 3)的回顾窗口,我正在尝试创建一个包含以下时间序列的新数据框:
x(ti)= 1 / w(Pt / Pt + Pt-1 / Pt + Pt-2 / Pt)
我使用了以下代码:
nR<-nrow(MyData)
nC<-ncol(MyData)
x<-data.frame()
for (j in 1:nC){
for(i in 1:nR-w+1){
x[i,j]<-rowSums(MyData[i:(w+i-1),j])
}
}
但是,我收到以下错误消息:
Error in rval[i, j, drop = drop., ...] :
only 0's may be mixed with negative subscripts
这似乎表明我的循环出了问题?还是语法?任何帮助将不胜感激。