计算滚动窗口上的自回归AR1模型系数
我想将自回归AR1模型拟合到滚动窗口上的时间序列数据,以提取固定窗口(比如100)上每个时间步的系数 我可以用这样的方法计算每个tilmestep的系数计算滚动窗口上的自回归AR1模型系数,r,time-series,R,Time Series,我想将自回归AR1模型拟合到滚动窗口上的时间序列数据,以提取固定窗口(比如100)上每个时间步的系数 我可以用这样的方法计算每个tilmestep的系数 dat <- data.frame(Last = runif(10000), time =seq(1, 10000, 1)) roll.ar<-NULL ##loop to calculate the rolling change for(i in 2:length(dat[,1])){ dat.t<-subs
dat <- data.frame(Last = runif(10000), time =seq(1, 10000, 1))
roll.ar<-NULL
##loop to calculate the rolling change
for(i in 2:length(dat[,1])){
dat.t<-subset(dat, time<=unique(sort(dat$time))[i])
roll.ar[[i]]<-ar.ols(dat.t$Last, aic = FALSE, order.max = 1, dmean = FALSE, intercept = FALSE)$ar[1]
}
dat下面我们定义了一系列20个值,并使用10个窗口计算ar1系数
library(zoo)
set.seed(123)
dat <- data.frame(Last = runif(20)) # test input
AR <- function(x) {
ar.ols(x, aic = FALSE, order.max = 1, dmean = FALSE, intercept = FALSE)$ar[1]
}
rollapplyr(dat$Last, 10, AR, fill = NA)
## [1] NA NA NA NA NA NA
## [7] NA NA NA -0.2932866 -0.3146008 -0.3142310
## [13] -0.2622454 -0.4233658 -0.1284332 -0.5366662 -0.6037607 -0.3294886
## [19] -0.1573014 -0.1964080
图书馆(动物园)
种子集(123)
dat非常优雅的解决方案。非常感谢。我以前从未遇到过罗拉普尔。漂亮的