Documentation Center

  • Trial Software
  • Product Updates

pptest

Phillips-Perron test for one unit root

Syntax

[h,pValue,stat,cValue,reg] = pptest(y)
[h,pValue,stat,cValue,reg] = pptest(y,'ParameterName',ParameterValue,...)

Description

Phillips-Perron tests assess the null hypothesis of a unit root in a univariate time series y. All tests use the model:

yt = c + δt + a yt – 1 + e(t).

The null hypothesis restricts a = 1. Variants of the test, appropriate for series with different growth characteristics, restrict the drift and deterministic trend coefficients, c and δ, respectively, to be 0. The tests use modified Dickey-Fuller statistics (see adftest) to account for serial correlations in the innovations process e(t).

Input Arguments

y

Vector of time-series data. The last element is the most recent observation. NaNs indicating missing values are removed.

Name-Value Pair Arguments

'lags'

Scalar or vector of nonnegative integers indicating the number of autocovariance lags to include in the Newey-West estimator of the long-run variance.

For best results, give a suitable value for lags. For information on selecting lags, see Determining an Appropriate Number of Lags.

Default: 0

'model'

String or cell vector of strings indicating the model variant. Values are:

  • 'AR' (autoregressive)

    pptest tests the null model

    yt = yt – 1 + e(t).

    against the alternative model

    yt = a yt – 1 + e(t).

    with AR(1) coefficient a < 1.

  • 'ARD' (autoregressive with drift)

    pptest tests the 'AR' null model against the alternative model

    yt = c + a yt – 1 + e(t).

    with drift coefficient c and AR(1) coefficient a < 1.

  • 'TS' (trend stationary)

    pptest tests the null model

    yt = c + yt – 1 + e(t).

    against the alternative model

    yt = c + δ t + a yt – 1 + e(t).

    with drift coefficient c, deterministic trend coefficient δ, and AR(1) coefficient a < 1.

Default: 'AR'

'test'

String or cell vector of strings indicating the test statistic. Values are:

  • 't1'

    pptest computes a modification of the standard t statistic

    t1 = (a – l)/se

    from OLS estimates of the AR(1) coefficient and its standard error (se) in the alternative model. The test assesses the significance of the restriction a – 1 = 0.

  • 't2'

    pptest computes a modification of the "unstudentized" t statistic

    t2 = T (a – 1)

    from an OLS estimate of the AR(1) coefficient a and the stationary coefficients in the alternative model. T is the effective sample size, adjusted for lag and missing values. The test assesses the significance of the restriction a – 1 = 0.

Default: 't1'

'alpha'

Scalar or vector of nominal significance levels for the tests. Set values between 0.001 and 0.999.

Default: 0.05

Output Arguments

h

Vector of Boolean decisions for the tests, with length equal to the number of tests. Values of h equal to 1 indicate rejection of the unit-root null in favor of the alternative model. Values of h equal to 0 indicate a failure to reject the unit-root null.

pValue

Vector of p-values of the test statistics, with length equal to the number of tests. p-values are left-tail probabilities.

stat

Vector of test statistics, with length equal to the number of tests. Statistics are computed using OLS estimates of the coefficients in the alternative model.

cValue

Vector of critical values for the tests, with length equal to the number of tests. Values are for left-tail probabilities.

reg

Structure of regression statistics for the OLS estimation of coefficients in the alternative model. The number of records equals the number of tests. Each record has the following fields:

numLength of input series with NaNs removed
sizeEffective sample size, adjusted for lags
namesRegression coefficient names
coeffEstimated coefficient values
seEstimated coefficient standard errors
CovEstimated coefficient covariance matrix
tStatst statistics of coefficients and p-values
FStatF statistic and p-value
yMuMean of the lag-adjusted input series
ySigmaStandard deviation of the lag-adjusted input series
yHatFitted values of the lag-adjusted input series
resRegression residuals
autoCovEstimated residual autocovariances
NWEstNewey-West estimator
DWStatDurbin-Watson statistic
SSRRegression sum of squares
SSEError sum of squares
SSTTotal sum of squares
MSEMean square error
RMSEStandard error of the regression
RSqR2 statistic
aRSqAdjusted R2 statistic
LLLoglikelihood of data under Gaussian innovations
AICAkaike information criterion
BICBayesian (Schwarz) information criterion
HQCHannan-Quinn information criterion

Definitions

The Phillips-Perron model is

yt = c + δt + a yt – 1 + e(t).

where e(t) is the innovations process.

The test assesses the null hypothesis under the model variant appropriate for series with different growth characteristics (c = 0 or δ = 0).

Examples

expand all

Assess Stationarity Using the Phillips-Perron Test

Test GDP data for a unit root using a trend-stationary alternative with 0, 1, and 2 lags for the Newey-West estimator.

Load the GDP data set.

load Data_GDP
logGDP = log(Data);

Perform the Phillips-Perron test including 0, 1, and 2 autocovariance lags in the Newey-West robust covariance estimator.

h = pptest(logGDP,'model','TS','lags',0:2)
h =

     0     0     0

Each test returns h = 0, which means the test fails to reject the unit-root null hypothesis for each set of lags. Therefore, there is not enough evidence to suggest that log GDP is trend stationary.

More About

expand all

Algorithms

pptest performs a least-squares regression to estimate coefficients in the null model.

The tests use modified Dickey-Fuller statistics (see adftest) to account for serial correlations in the innovations process e(t). Phillips-Perron statistics follow nonstandard distributions under the null, even asymptotically. Critical values for a range of sample sizes and significance levels have been tabulated using Monte Carlo simulations of the null model with Gaussian innovations and five million replications per sample size. pptest interpolates critical values and p-values from the tables. Tables for tests of type 't1' and 't2' are identical to those for adftest.

References

[1] Davidson, R., and J. G. MacKinnon. Econometric Theory and Methods. Oxford, UK: Oxford University Press, 2004.

[2] Elder, J., and P. E. Kennedy. "Testing for Unit Roots: What Should Students Be Taught?" Journal of Economic Education. Vol. 32, 2001, pp. 137–146.

[3] Hamilton, J. D. Time Series Analysis. Princeton, NJ: Princeton University Press, 1994.

[4] Newey, W. K., and K. D. West. "A Simple Positive Semidefinite, Heteroskedasticity and Autocorrelation Consistent Covariance Matrix." Econometrica. Vol. 55, 1987, pp. 703–708.

[5] Perron, P. "Trends and Random Walks in Macroeconomic Time Series: Further Evidence from a New Approach." Journal of Economic Dynamics and Control. Vol. 12, 1988, pp. 297–332.

[6] Phillips, P. "Time Series Regression with a Unit Root." Econometrica. Vol. 55, 1987, pp. 277–301.

[7] Phillips, P., and P. Perron. "Testing for a Unit Root in Time Series Regression." Biometrika. Vol. 75, 1988, pp. 335–346.

[8] Schwert, W. "Tests for Unit Roots: A Monte Carlo Investigation." Journal of Business and Economic Statistics. Vol. 7, 1989, pp. 147–159.

[9] White, H., and I. Domowitz. "Nonlinear Regression with Dependent Observations." Econometrica. Vol. 52, 1984, pp. 143–162.

See Also

| | |

Was this topic helpful?