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

View source: R/test_serial.R

pwtestR Documentation

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, ...)

## S3 method for class 'formula'
pwtest(x, data, effect = c("individual", "time"), ...)

## S3 method for class 'panelmodel'
pwtest(x, effect = c("individual", "time"), ...)

Arguments

x

an object of class "formula", or an estimated model of class panelmodel,

...

further arguments passed to plm.

data

a data.frame,

effect

the effect to be tested for, one of "individual" (default) or "time",

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.

Value

An object of class "htest".

Author(s)

Giovanni Millo

References

\insertRef

WOOL:02plm

\insertRef

WOOL:10plm

See Also

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

Examples


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")


ycroissant/plm documentation built on July 8, 2024, 3:59 a.m.