pwartest: Wooldridge Test for AR(1) Errors in FE Panel Models

View source: R/test_serial.R

pwartestR Documentation

Wooldridge Test for AR(1) Errors in FE Panel Models


Test of serial correlation for (the idiosyncratic component of) the errors in fixed–effects panel models.


pwartest(x, ...)

## S3 method for class 'formula'
pwartest(x, data, ...)

## S3 method for class 'panelmodel'
pwartest(x, ...)



an object of class formula or of class panelmodel,


further arguments to be passed on to vcovHC (see Details and Examples).


a data.frame,


As \insertCiteWOOL:10;textualplm, Sec. 10.5.4 observes, under the null of no serial correlation in the errors, the residuals of a FE model must be negatively serially correlated, with cor(\hat{u}_{it}, \hat{u}_{is})=-1/(T-1) for each t,s. He suggests basing a test for this null hypothesis on a pooled regression of FE residuals on their first lag: \hat{u}_{i,t} = \alpha + \delta \hat{u}_{i,t-1} + \eta_{i,t}. Rejecting the restriction \delta = -1/(T-1) makes us conclude against the original null of no serial correlation.

pwartest estimates the within model and retrieves residuals, then estimates an AR(1) pooling model on them. The test statistic is obtained by applying a F test to the latter model to test the above restriction on \delta, setting the covariance matrix to vcovHC with the option method="arellano" to control for serial correlation.

Unlike the pbgtest() and pdwtest(), this test does not rely on large–T asymptotics and has therefore good properties in “short” panels. Furthermore, it is robust to general heteroskedasticity.


An object of class "htest".


Giovanni Millo






See Also

pwfdtest(), pdwtest(), pbgtest(), pbltest(), pbsytest().


data("EmplUK", package = "plm")
pwartest(log(emp) ~ log(wage) + log(capital), data = EmplUK)

# pass argument 'type' to vcovHC used in test
pwartest(log(emp) ~ log(wage) + log(capital), data = EmplUK, type = "HC3")

plm documentation built on April 9, 2023, 5:06 p.m.