pp.test: Phillips--Perron Unit Root Test
Description
Computes the Phillips-Perron test for the null hypothesis that
x
has a unit root.Usage
pp.test (x, alternative = c("stationary", "explosive"),
type = c("Z(alpha)", "Z(t_alpha)"), lshort = TRUE)
Arguments
x
a numeric vector or univariate time series.
alternative
indicates the alternative hypothesis and must be
one of "stationary"
(default) or "explosive"
. You can
specify just the initial letter.
type
indicates which variant of the test is computed and must
be one of "Z(alpha)"
(default) or "Z(t_alpha)"
.
lshort
a logical indicating whether the short or long version
of the truncation lag parameter is used.
Value
- A list with class
"htest"
containing the following components: - statisticthe value of the test statistic.
- parameterthe truncation lag parameter.
- p.valuethe p-value of the test.
- methoda character string indicating what type of test was
performed.
- data.namea character string giving the name of the data.
- alternativea character string describing the alternative
hypothesis.
Details
The general regression equation which incorporates a constant and a
linear trend is used and the Z(alpha)
or Z(t_alpha)
statistic for a
first order autoregressive coefficient equals one are computed. To estimate
sigma^2
the Newey-West estimator is used. If lshort
is TRUE
, then the truncation lag parameter is set to
trunc(4*(n/100)^0.25)
, otherwise
trunc(12*(n/100)^0.25)
is used. The p-values are
interpolated from Table 4.1 and 4.2, p. 103 of Banerjee et al.
(1993). If the computed statistic is outside the
table of critical values, then a warning message is generated.
Missing values are not handled.References
A. Banerjee, J. J. Dolado, J. W. Galbraith, and D. F. Hendry (1993):
Cointegration, Error Correction, and the Econometric Analysis
of Non-Stationary Data, Oxford University Press, Oxford.
P. Perron (1988): Trends and Random Walks in Macroeconomic Time
Series. Journal of Economic Dynamics and Control 12,
297-332.Examples
Run this codex <- rnorm(1000) # no unit-root
pp.test(x)
y <- cumsum(x) # has unit root
pp.test(y)
Run the code above in your browser using DataLab