# K. Ensor, Rice University # Stat 421 # Model Selection kmodelfit<- function(x,maxp,maxq) { p<-maxp q<-maxq n<-length(x) aic<-matrix(0,(p+1),(q+1)) aicc<-aic sic<-aic Msigma2<-aic for (i in 0:p){ for (j in 0:q){ h<-i+1 m<-j+1 k<- i+j if( k==0){ Msigma2[h,m]<-var(x) temp<-log(Msigma2[h,m]) aic[h,m]<-temp aicc[h,m]<-temp sic[h,m]<-temp } if( k>0){ xfit<-arima.mle(x,model=list(order=c(i,0,j))) Msigma2[h,m]<-log(xfit$sigma2) loglik<-log(xfit$sigma2) aic[h,m]<-loglik+ 2*k/n aicc[h,m]<-loglik+(n+k)/(n-k-2) sic[h,m]<-loglik+ k*log(n)/n } } } return(Msigma2,aic,aicc,sic) }