Last data update: 2014.03.03

R: Unit root tests for panel data
purtestR Documentation

Unit root tests for panel data

Description

purtest implements several testing procedures that have been proposed to test unit root hypotheses with panel data.

Usage

purtest(object, data = NULL, index = NULL,
        test= c("levinlin", "ips", "madwu", "hadri"),
        exo = c("none", "intercept", "trend"),
        lags = c("SIC", "AIC", "Hall"), pmax = 10, Hcons = TRUE,
        q = NULL, dfcor = FALSE, fixedT = TRUE, ...)
## S3 method for class 'purtest'
print(x, ...)
## S3 method for class 'purtest'
summary(object, ...)
## S3 method for class 'summary.purtest'
print(x, ...)

Arguments

object, x

Either a 'data.frame' or a matrix containing the time series, a 'pseries' object, a formula, or the name of a column of a 'data.frame', or a 'pdata.frame' on which the test has to be computed; a 'purtest' object for the print and summary methods,

data

a 'data.frame' or a 'pdata.frame' object,

index

the indexes,

test

the test to be computed: one of "levinlin" for Levin, Lin and Chu (2002), "ips" for Im, Pesaran and Shin (2003), "madwu" for Maddala and Wu (1999), or "hadri" for Hadri (2000),

exo

the exogenous variables to introduce in the augmented Dickey-Fuller regressions, one of: no exogenous variables ("none"), individual intercepts ("intercept"), or individual intercepts and trends ("trend"),

lags

the number of lags to be used for the augmented Dickey-Fuller regressions: either an integer (the number of lags for all time series), a vector of integers (one for each time series), or a character string for an automatic computation of the number of lags, based on either the AIC ("AIC"), the SIC ("SIC"), or on Hall's method ("Hall"),

pmax

maximum number of lags,

Hcons

logical, indicating whether the heteroscedasticity-consistent test of Hadri should be computed,

q

the bandwidth for the estimation of the long-run variance,

dfcor

logical, indicating whether the standard deviation of the regressions is to be computed using a degrees-of-freedom correction,

fixedT

logical, indicating whether the different ADF regressions are to be computed using the same number of observations,

...

further arguments.

Details

All these tests except "hadri" are based on the estimation of augmented Dickey-Fuller regressions for each time series. A statistic is then computed using the t-statistic associated with the lagged variable.

The kind of test to be computed can be specified in several ways:

A formula/data interface (if data is a data.frame, an additional index argument should be specified); the formula should be of the form: y~0, y~1, or y~trend for a test with no exogenous variables, with an intercept, or with individual intercepts and time trend, respectively.

A data.frame, a matrix, a pseries: in this case, the exogenous variables are specified using the exo argument.

The Hadri statistic is the cross-sectional average of the individual KPSS statistics, standardized by their asymptotic mean and standard deviation.

Value

An object of class 'purtest': a list with the elements 'statistic' (a 'htest' object), 'call', 'args', 'idres' (containing results from the individual regressions), and 'adjval' (containing the simulated means and variances needed to compute the statistic).

Author(s)

Yves Croissant

References

Hadri K. (2000). “Testing for Unit Roots in Heterogeneous Panel Data”, The Econometrics Journal, 3, pp. 148–161.

Im K.S., Pesaran M.H. and Shin Y. (2003). “Testing for Unit Roots in Heterogeneous Panels”, Journal of Econometrics, 115(1), pp. 53–74.

Levin A., Lin C.F. and Chu C.S.J. (2002). “Unit Root Test in Panel Data: Asymptotic and Finite Sample Properties”, Journal of Econometrics, 108, pp. 1–24.

Maddala G.S. and Wu S. (1999). “A Comparative Study of Unit Root Tests with Panel Data and a New Simple Test”, Oxford Bulletin of Economics and Statistics, 61, Supplement 1, pp. 631–652.

Examples

data("Grunfeld", package = "plm")
y <- data.frame(split(Grunfeld$inv, Grunfeld$firm))

purtest(y, pmax = 4, exo = "intercept", test = "madwu")

## same via formula interface
purtest(inv ~ 1, data = Grunfeld, index = "firm", pmax = 4, test = "madwu")

Results