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