1、对于AR(P)而言也可以得到类似矩估计得到的方程,即最小二乘与矩估计得到的估计量相同。1.2.2MA模型1.2.3ARMA模型1.3极大似然估计与无条件最小二乘估计2R中如何实现时间序列参数估计2.1对于AR模型ar(x, aic = TRUE, order.max = NULL, method=c(yule-walker, burgolsmleyw), na.action, series, .) ar(ar1.s,order.max=1,AIC=F,method=yw)#即矩估计Call:ar(x = ar1.s, order.max = 1, method = , AIC = F)Coef
2、ficients: 1 0.8314 Order selected 1 sigma2 estimated as 1.382 ols)#最小二乘估计0.857 Intercept: 0.02499 (0.1308) Order selected 1 sigma2 estimated as 1.008 mle)#极大似然估计0.8924 Order selected 1 sigma2 estimated as 1.041 采用自编函数总结三个不同的估计值 Myar(ar2.s,order.max=3) 最小二乘估计 矩估计 极大似然估计1 1.5137146 1.4694476 1.5061369
3、2 -0.8049905 -0.7646034 -0.79644532.2对于ARMA模型arima(x, order = c(0, 0, 0), seasonal = list(order = c(0, 0, 0), period = NA), xreg = NULL, include.mean = TRUE, transform.pars = TRUE, fixed = NULL, init = NULL, method = c(CSS-MLMLCSS), n.cond, optim.control = list(), kappa = 1e+06, io = NULL, xtransf,
4、transfer = NULL)order的三个参数分别代表AR,差分 MA的阶数 arima(arma11.s,order=c(1,0,1),method=CSS)arima(x = arma11.s, order = c(1, 0, 1), method = ar1 ma1 intercept 0.5586 0.3669 0.3928s.e. 0.1219 0.1564 0.3380sigma2 estimated as 1.199: part log likelihood = -150.98ML 0.5647 0.3557 0.3216s.e. 0.1205 0.1585 0.3358s
5、igma2 estimated as 1.197: log likelihood = -151.33, aic = 308.65 Myarima(arma11.s,order=c(1,0,1)$coef 条件SS估计 极大似然估计 条件似然估计ar1 0.5585828 0.5647477 0.5647498ma1 0.3668814 0.3556965 0.3556973intercept 0.3927654 0.3216166 0.3216152$log1, -150.984 -151.3268 -151.3268$sigma21, 1.199378 1.196984 1.196984$a
6、ic1, NA 308.6537 308.65372.3采用自助法arima.boot()此函数估计的是参数的取值置信区间,而不是指具体的某个值,与arima是不同的。 res=arima(sqrt(hare),order=c(3,0,0),include.mean=T) set.seed(12345) # Method I以最初三个观测为条件,并假设误差服从正态分布,得到95%的置信区间quantile用于计算置信区间值,signif类似于四舍五入函数,保留有效数值。 coefm.cond.norm=arima.boot(res,cond.boot=T,is.normal=T,B=1000,
7、init=sqrt(hare) signif(apply(coefm.cond.norm,2,function(x)quantile(x,c(.025,.975),na.rm=T),3) ar1 ar2 ar3 intercept noise var2.5% 0.593 -0.667 -0.6740 5.12 0.54897.5% 1.280 0.244 -0.0135 6.38 1.540 # Method II 假设误差并不服从正态分布,而是需要从样本抽样中得到coefm.cond.replace=arima.boot(res,cond.boot=T,is.normal=F,B=1000,
8、init=sqrt(hare) signif(apply(coefm.cond.replace,2,function(x)quantile(x,c(.025,.975),na.rm=T),3)2.5% 0.611 -0.700 -0.6720 4.98 0.51697.5% 1.300 0.241 -0.0417 6.32 1.500 # Method III基于平稳自助法的置信区间,且误差服从正态分布 coefm.norm=arima.boot(res,cond.boot=F,is.normal=T,ntrans=100,B=1000,init=sqrt(hare) signif(apply
9、(coefm.norm,2,function(x)quantile(x,c(.025,.975),na.rm=T),3)2.5% 0.687 -0.747 -0.6600 4.99 0.50897.5% 1.380 0.192 -0.0168 6.33 1.500 # Method IV基于平稳自助法的置信区间,且误差不服从正态分布coefm.replace=arima.boot(res,cond.boot=F,is.normal=F,ntrans=100,B=1000,init=sqrt(hare) signif(apply(coefm.replace,2,function(x)quanti
10、le(x,c(.025,.975),na.rm=T),3)2.5% 0.70 -0.715 -0.6620 4.98 0.4797.5% 1.36 0.183 -0.0187 6.30 1.503附自编函数3.1Myar#用于自回归模型的参数估计,整合矩估计,最小二乘估计,以及极大似然估计#该函数用于对时间序列中心化数据(因此截距项一定为0)估计AR模型的参数,AIC为真时,滞后项根据AIC准则确定,为假时则根据设置的order.max设定Myar=function(tsdata, order.max = 1,AIC = F) library(TSA) ols-ar(tsdata,order=
11、order.max,AIC=AIC,method= yw mle olscoef-ols2 ywcoef-yw2 mlecoef-mle2 result=data.frame(olscoef,ywcoef,mlecoef) colnames(result)=c(最小二乘估计,矩估计极大似然估计 return(result)3.2MyarimaMyarima=function(tsdata, order=c(0,0,0) result=NULL css-arima(tsdata,order=order,method= ml cssml-arima(tsdata,order=order) result$coef=cbind(css$coef,ml$coef,cssml$coef) result$log=cbind(css$log,ml$log,cssml$log) result$sigma2=cbind(css$sigma2,ml$sigma2,cssml$sigma2) result$aic=cbind(NA,ml$aic,cssml$aic) colnames(result$coef)=c(条件SS估计条件似然估计 c
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1