<br />
x <- as.matrix(sample(10:100,30)) # 样本数据<br />
X <- x-mean(x) #中心化<br />
n <- length(X)<br />
r0 <- t(X[1:n]%*%X[1:n])/n # 自己和自己先搞一下</p>
<p>#延迟k自协方差估计值</p>
<p>cork <- function(k){<br />
r <- numeric(k)<br />
for(i in 1:k) r[i] <- t(X[1:(n-i)])%*%X[(i+1):n]/(n-i)<br />
r[1:k] }</p>
<p>k <- 6<br />
YW <- diag(k) # 封装YULE-WAKLER</p>
<p>dat <- unlist(sapply((k-1):1, function(x) cbind(cork(x)))) # 抽取YW所需数据<br />
dat <- dat/r0 # 标准化<br />
YW[lower.tri(YW)] <- dat<br />
YW<-YW+t(YW)+I(-1) # 生成的比较繁琐,有没有更好的办法</p>
<p>ACF <- as.matrix(cork(k)/r0) # 自相关系数<br />
M <- solve(YW,ACF) # YW方程<br />
M[k] # 延迟k偏自相关系数<br />
</p>