purtest
implements several testing procedures that have been proposed
to test unit root hypotheses with panel data.
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 purtest
print(x, ...)
# S3 method for purtest
summary(object, ...)
# S3 method for summary.purtest
print(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,
a "data.frame"
or a "pdata.frame"
object (required for
formula interface, see Details and Examples),
the indexes,
the test to be computed: one of "levinlin"
for
LEVIN:LIN:CHU:02;textualplm, "ips"
for
IM:PESAR:SHIN:03;textualplm, "madwu"
for
MADDA:WU:99;textualplm, "Pm"
, "invnormal"
,
or "logit"
for various tests as in
CHOI:01;textualplm, or "hadri"
for
HADR:00;textualplm, see Details,
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,
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:94;textualplm ("Hall"
); argument is irrelevant
for test = "hadri"
,
maximum number of lags (irrelevant for test = "hadri"
),
logical, only relevant for test = "hadri"
,
indicating whether the heteroskedasticity-consistent test of
HADR:00;textualplm should be computed,
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))),
logical, indicating whether the standard deviation of the regressions is to be computed using a degrees-of-freedom correction,
logical, indicating whether the individual ADF
regressions are to be computed using the same number of
observations (irrelevant for test = "hadri"
),
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).
For purtest: An object of class "purtest"
: a list with the elements
named:
"statistic"
(a "htest"
object),
"call"
,
"args"
,
"idres"
(containing results from the individual regressions),
"adjval"
(containing the simulated means and variances needed to compute
the statistic, for test = "levinlin"
and "ips"
, otherwise NULL
),
"sigma2"
(short-run and long-run variance for test = "levinlin"
, otherwise NULL).
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
KWIA:PHIL:SCHM:SHIN:92;textualplm, 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:
"madwu"
is the inverse chi-squared test
MADDA:WU:99;textualplm, also called P test by
CHOI:01;textualplm.
"Pm"
is the modified P test proposed by
CHOI:01;textualplm for large N,
"invnormal"
is the inverse normal test by CHOI:01;textualplm, and
"logit"
is the logit test by CHOI:01;textualplm.
The individual p-values for the Fisher-type tests are approximated as described in MACK:96;textualplm if the package urca (PFAFF:08;textualplm) is available, otherwise as described in MACK:94;textualplm.
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 exogeneous instruments of the tests (where applicable) can be specified in several ways, depending on how the data is handed over to the function:
For the 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. The exo
argument is
ignored in this case.
For the data.frame
, matrix
, and pseries
interfaces: in
these cases, the exogenous variables are specified using the exo
argument.
With the associated summary
and print
methods, additional
information can be extracted/displayed (see also Value).
# NOT RUN {
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")
# }
Run the code above in your browser using DataLab