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