[R] Inverse autocorrelation fonction

Jean-Baptiste Lepetit jb.lepetit at wanadoo.fr
Mon May 16 23:13:13 CEST 2011


I've been looking for an IACF() procedure in R for a long time (it's a very
convenient function to check for overdifferencing time series), and
eventually decided to write my own function. Here's what I came up with :

3 web-pages helped me estimate it :
http://www.xycoon.com/inverse_autocorrelations.htm
http://support.sas.com/documentation/cdl/en/etsug/60372/HTML/default/viewer.htm#etsug_arima_sect026.htm      
--> How SAS does it
www.jos.nu/Articles/abstract.asp?article=42113    page 116 --> choice of
order.max "p" : not too large so that the estimators' std.errors remain
reasonably small, but large enough so that for high lags, the inverse
autocorrelationq approach zero. One can try 10,20,30,40... it's not
recommended to go over N/4


given a "ts" object ts.1 :

artest <- ar(ts.1,aic=F,order.max=30,method="yule-walker")  #choice p=30
acfth <- ARMAacf(ar=numeric(0),ma=artest$ar) #compute theoretical acf for an
MA, taking the estimated AR coefficients

# Then we plot, using ggplot2 :

library(ggplot2)

base <- data.frame(IACF=as.vector(acfth),Lag=as.numeric(names(acfth)))
ci <- 0.95
climy <- qnorm((1 + ci)/2) / sqrt(artest$n.used) ###Computing
significativity levels
q2 <- qplot(Lag, IACF, data = base, yend = 0, xend = Lag,
geom="bar",stat="identity",fill=I("Darkblue"))+theme_bw()+geom_hline(yintercept=c(-climy,climy),colour="red",linetype="dashed")+opts(title=expression(paste("Inverse
autocorrelogram of ",y[t])),plot.title = theme_text(size =
25))+geom_hline(yintercept=0)
q2

Hope this can help somebody

JB Lepetit


  

--
View this message in context: http://r.789695.n4.nabble.com/Inverse-autocorrelation-fonction-tp3527467p3527467.html
Sent from the R help mailing list archive at Nabble.com.



More information about the R-help mailing list