purtest {plm}R 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", "Pm", "invnormal", "logit", "hadri"),
  exo = c("none", "intercept", "trend"),
  lags = c("SIC", "AIC", "Hall"),
  pmax = 10,
  Hcons = TRUE,
  q = NULL,
  dfcor = FALSE,
  fixedT = TRUE,
  ips.stat = NULL,
  ...
)

## 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 (individuals as columns), a "pseries" object, a formula; a "purtest" object for the print and summary methods,

data

a "data.frame" or a "pdata.frame" object (required for formula interface, see Details and Examples),

index

the indexes,

test

the test to be computed: one of "levinlin" for Levin et al. (2002), "ips" for Im et al. (2003), "madwu" for Maddala and Wu (1999), "Pm" , "invnormal", or "logit" for various tests as in Choi (2001), or "hadri" for Hadri (2000), see Details,

exo

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

lags

the number of lags to be used for the augmented Dickey-Fuller regressions: either a single value 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 the AIC ("AIC"), the SIC ("SIC"), or on the method by Hall (1994) ("Hall"); argument is irrelevant for test = "hadri",

pmax

maximum number of lags (irrelevant for test = "hadri"),

Hcons

logical, only relevant for test = "hadri", indicating whether the heteroskedasticity-consistent test of Hadri (2000) should be computed,

q

the bandwidth for the estimation of the long-run variance (only relevant for test = "levinlin", the default (q = NULL) gives the value as suggested by the authors as round(3.21 * T^(1/3))),

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 individual ADF regressions are to be computed using the same number of observations (irrelevant for test = "hadri"),

ips.stat

NULL or character of length 1 to request a specific IPS statistic, one of "Wtbar" (also default if ips.stat = NULL), "Ztbar", "tbar",

...

further arguments (can set argument p.approx to be passed on to non-exported function padf to either "MacKinnon1994" or "MacKinnon1996" to force a specific method for p-value approximation, the latter only being possible if package 'urca' is installed).

Details

All these tests except "hadri" are based on the estimation of augmented Dickey-Fuller (ADF) regressions for each time series. A statistic is then computed using the t-statistics associated with the lagged variable. The Hadri residual-based LM statistic is the cross-sectional average of the individual KPSS statistics Kwiatkowski et al. (1992), standardized by their asymptotic mean and standard deviation.

Several Fisher-type tests that combine p-values from tests based on ADF regressions per individual are available:

The individual p-values for the Fisher-type tests are approximated as described in MacKinnon (1996) if the package urca (Pfaff (2008)) is available, otherwise as described in MacKinnon (1994).

For the test statistic tbar of the test of Im/Pesaran/Shin (2003) (ips.stat = "tbar"), no p-value is given but 1%, 5%, and 10% critical values are interpolated from paper's tabulated values via inverse distance weighting (printed and contained in the returned value's element statistic$ips.tbar.crit).

Hadri's test, the test of Levin/Lin/Chu, and the tbar statistic of Im/Pesaran/Shin are not applicable to unbalanced panels; the tbar statistic is not applicable when lags > 0 is given.

The exogenous instruments of the tests (where applicable) can be specified in several ways, depending on how the data is handed over to the function:

With the associated summary and print methods, additional information can be extracted/displayed (see also Value).

Value

For purtest: An object of class "purtest": a list with the elements named:

Author(s)

Yves Croissant and for "Pm", "invnormal", and "logit" Kevin Tappe

References

Choi I (2001). “Unit root tests for panel data.” Journal of International Money and Finance, 20(2), 249 - 272. ISSN 0261-5606, https://www.sciencedirect.com/science/article/pii/S0261560600000486.

Hadri K (2000). “Testing for stationarity in heterogeneous panel data.” The Econometrics Journal, 3(2), 148–161. ISSN 13684221, 1368423X.

Hall A (1994). “Testing for a unit root in time series with pretest data-based model selection.” Journal of Business & Economic Statistics, 12(4), 461–470.

Im KS, Pesaran MH, Shin Y (2003). “Testing for unit roots in heterogenous panels.” Journal of Econometrics, 115(1), 53-74.

Kwiatkowski D, Phillips PC, Schmidt P, Shin Y (1992). “Testing the null hypothesis of stationarity against the alternative of a unit root: How sure are we that economic time series have a unit root?” Journal of Econometrics, 54(1), 159 - 178. ISSN 0304-4076, https://www.sciencedirect.com/science/article/pii/030440769290104Y.

Levin A, Lin CF, Chu CSJ (2002). “Unit root tests in panel data : asymptotic and finite-sample properties.” Journal of Econometrics, 108, 1-24.

MacKinnon JG (1994). “Approximate Asymptotic Distribution Functions for Unit-Root and Cointegration Tests.” Journal of Business & Economic Statistics, 12(2), 167–176. ISSN 07350015.

MacKinnon JG (1996). “Numerical Distribution Functions for Unit Root and Cointegration Tests.” Journal of Applied Econometrics, 11(6), 601–618. ISSN 08837252.

Maddala GS, 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, 631-52.

Pfaff B (2008). Analysis of Integrated and Cointegrated Time Series with R, Second edition. Springer, New York. ISBN 0-387-27960-1, https://CRAN.r-project.org/package=urca.

See Also

cipstest(), phansitest()

Examples


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

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

## same via pseries interface
pGrunfeld <- pdata.frame(Grunfeld, index = c("firm", "year"))
purtest(pGrunfeld$inv, pmax = 4, exo = "intercept", test = "madwu")

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


[Package plm version 2.6-4 Index]