Learn R Programming

plm (version 1.6-5)

pwtest: Wooldridge's Test for Unobserved Effects in Panel Models

Description

Semi-parametric test for the presence of (individual or time) unobserved effects in panel models.

Usage

pwtest(x, ...) "pwtest"(x, data, effect = c("individual", "time"), ...) "pwtest"(x, effect = c("individual", "time"), ...)

Arguments

x
an object of class "formula", or an estimated model of class panelmodel,
effect
the effect to be tested for, one of "individual" (default) or "time",
data
a data.frame,
...
further arguments passed to plm.

Value

An object of class "htest".

Details

This semi-parametric test checks the null hypothesis of zero correlation between errors of the same group. Therefore, it has power both against individual effects and, more generally, any kind of serial correlation.

The test relies on large-N asymptotics. It is valid under error heteroskedasticity and departures from normality.

The above is valid if effect="individual", which is the most likely usage. If effect="time", symmetrically, the test relies on large-T asymptotics and has power against time effects and, more generally, against cross-sectional correlation.

If the panelmodel interface is used, the inputted model must be a pooling model.

References

Wooldridge, J.M. (2002) Econometric Analysis of Cross-Section and Panel Data, MIT Press, Sec. 10.4.4., pp. 264--265.

Wooldridge, J.M. (2010) Econometric Analysis of Cross-Section and Panel Data, 2nd ed., MIT Press, Sec. 10.4.4, pp. 299--230.

See Also

pbltest, pbgtest, pdwtest, pbsytest, pwartest, pwfdtest for tests for serial correlation in panel models. plmtest for tests for random effects.

Examples

Run this code
data("Produc", package = "plm")
## formula interface
pwtest(log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp, data = Produc)
pwtest(log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp, data = Produc, effect = "time")

## panelmodel interface
# first, estimate a pooling model, than compute test statistics
form <- formula(log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp)
pool_prodc <- plm(form, data = Produc, model = "pooling")
pwtest(pool_prodc) # == effect="individual"
pwtest(pool_prodc, effect="time")

Run the code above in your browser using DataLab