我试图通过“手”计算R中的变异函数,以创建不同滞后的几个值的向量k。
基本上我试图计算一下:
Gk = Var (yt+k − yt)/ Var (yt+1 − yt), k = 1, 2, … , 12
时间序列观察由yt。
表示我的尝试如下(其中diff.df是差异数据长度为72的矢量。
k <- seq(1,12,1)
x <- seq(1,length(diff.df)-length(k),1)
vario <- var(diff.df[x+k,]-diff.df[x,])/ var(diff.df[x+1,]-dif[x])
产生“尺寸数不正确”的错误
我不确定我在这里做错了什么。任何帮助,将不胜感激。 感谢。
答案 0 :(得分:0)
I realized that I was acting as if the vector was a data frame ([x,] as opposed to simply looking up index of x, [x])
for (i in 1:70){
x <- seq(1,71-i,1)
vario[i] <- var(diff2.df[x+i]-diff2.df[x])/ var(diff2.df[x+1]-diff2.df[x])
}
vario
plot(vario,type = 'l',xlab = 'Lag', ylab = 'Variogram')
is the final working code for anyone that cares.