[R] Adjusting for autocorrelation in a panel model

David Kennedy david.dmk at ihug.co.nz
Mon Feb 28 03:28:49 CET 2011


Dear Millo

Thank you for the prompt and honest answer.

Please accept my appreciation for developing the 'plm' package and for the excellent documentation associated with it.  It was a great place for me to start, and it made my initial forays into panel data analysis a lot easier.

You have given me an example of a random effects model with MA(4) errors.

I actually want to fit a fixed effects model with MA(4) errors.  Could you advise on how the Grunfeld formula would be modified to make it into a fixed effects model?  Or could you advise of any documentation that explains the 'nlme' package from an econometrician's perspective?  

-----Original Message-----
From: Millo Giovanni [mailto:Giovanni_Millo at Generali.com] 
Sent: Wednesday, 23 February 2011 12:46 a.m.
To: david.dmk at ihug.co.nz
Cc: R-help at r-project.org; Yves Croissant
Subject: [R] Adjusting for autocorrelation in a panel model

Cheers
David


Dear David,

short answer: no. Although an MA(4) correlation structure makes perfect
sense in an econometric panel model, the treatment of (relatively) rich
covariance structures in a likelihood framework is done so well in the
'nlme' and 'lme4' packages that we decided not to duplicate
functionality and specialize in OLS- and GLS-based semiparametric
methods instead.

If I am not mistaken, what you want may be done in 'nlme' along these
lines (usual Grunfeld example, RE + MA(4) errors):

> library(nlme)
> mod <- lme(inv ~ value + capital, data = Grunfeld,
+  random = ~ 1 | firm, correlation = corARMA(q=4, form = ~ year |
firm))
> summary(mod)
Linear mixed-effects model fit by REML
 Data: Grunfeld 
       AIC      BIC    logLik
  2080.698 2110.247 -1031.349

Random effects:
 Formula: ~1 | firm
        (Intercept) Residual
StdDev:     85.3411  61.4331

Correlation Structure: ARMA(0,4)
 Formula: ~year | firm 
 Parameter estimate(s):
    Theta1     Theta2     Theta3     Theta4 
1.02717687 0.72128293 0.20164003 0.03955776 
Fixed effects: inv ~ value + capital 
                 Value Std.Error  DF  t-value p-value
(Intercept) -30.417581 29.772699 188 -1.02166  0.3083
value         0.085603  0.007226 188 11.84669  0.0000
capital       0.304009  0.026718 188 11.37854  0.0000
 Correlation: 
        (Intr) value 
value   -0.220       
capital -0.219 -0.144

Standardized Within-Group Residuals:
         Min           Q1          Med           Q3          Max 
-2.507368276 -0.308055815  0.006783496  0.236507068  4.513481803 

Number of Observations: 200
Number of Groups: 10 
> 

This is a quick modification of the example on top of page 38 in our
paper here http://www.jstatsoft.org/v27/i02. Please refer to it for more
on plm vs. nlme (but be aware: back then I wrote that nlme didn't
support unbalanced panels, which was incorrect: it does!).

Lastly, yu're perfectly right: the asymptotics of pggls is inappropriate
in your case.

Best wishes,
Giovanni

------------- original message -----------------

Message: 107
Date: Tue, 22 Feb 2011 16:09:48 +1300
From: "David Kennedy" <david.dmk at ihug.co.nz>
To: <r-help at r-project.org>
Subject: [R] Adjusting for autocorrelation in a panel model
Message-ID: <00b701cbd23d$f7200560$e5601020$@dmk at ihug.co.nz>
Content-Type: text/plain

I am working with panel data.  I am using the plm package to do this.

 

I would like to do be able to adjust for autocorrelation, as one does
with
glm models and correlation structures (eg corr=corARMA(q=4)) .  In
particular, I want to employ MA(4) error structure.

 

Is there a way of doing this with the plm package?

 

(Note: I do not really want to use the pggls function for various
reasons.
One of those reasons is that it will be rare for n >> T.)

 

Thanks to anyone who can help.

 

Cheers

David


	[[alternative HTML version deleted]]



------------------------------

Giovanni Millo
Research Dept.,
Assicurazioni Generali SpA
Via Machiavelli 4, 
34132 Trieste (Italy)
tel. +39 040 671184 
fax  +39 040 671160 


Ai sensi del D.Lgs. 196/2003 si precisa che le informazi...{{dropped:13}}



More information about the R-help mailing list