UnitrootDistribution {fSeries} | R Documentation |
A collection and description of functions
to compute the distribution and and quantile
function for the unit root test statistics.
The functions are:
punitroot | the cumulative probability, |
qunitroot | the quantiles of the unit root test statistics, |
pdftest | the cumulative probability for the ADF test, |
qdftest | the quantiles for the ADF test. |
punitroot(q, n.sample = 0, trend = c("c", "nc", "ct", "ctt"), statistic = c("t", "n"), na.rm = FALSE) qunitroot(p, n.sample = 0, trend = c("c", "nc", "ct", "ctt"), statistic = c("t", "n"), na.rm = FALSE) pdftest(q, n.sample, trend = c("nc", "c", "ct"), statistic = c("t", "n")) qdftest(p, n.sample, trend = c("nc", "c", "ct"), statistic = c("t", "n"))
n.sample |
the number of observations in the sample from which the
quantiles are to be computed. [*unitroot] - Specify n.sample=0 for asymptotic quantiles. The
default is 0.
|
na.rm |
a logical value. If set to TRUE , missing values will
be removed otherwise not, the default is FALSE .
|
p |
a numeric vector of probabilities. Missing values are allowed. |
q |
vector of quantiles or test statistics. Missing values are allowed. |
statistic |
a character string describing the type of test statistic.
Valid choices are "t" for t-statistic, and "n"
for normalized statistic, sometimes referred to as the
rho-statistic. The default is "t" .
|
trend |
a character string describing the regression from which the
quantiles are to be computed. Valid choices are: "nc"
for a regression with no intercept (constant) nor time trend,
and "c" for a regression with an intercept (constant)
but no time trend, "ct" for a regression with an intercept
(constant) and a time trend. The default is "c" .
|
The function padftest
returns the cumulative probability of
the finite sample distribution of the unit root test statistics.
The function qadftest
returns the quantiles of the finite sample
distribution of the unit root test statistics, given the probabilities.
The function punitroot
returns the cumulative probability
of the asymptotic or finite sample distribution of the unit root
test statistics.
The function qunitroot
returns the quantiles of the
asymptotic or finite sample distribution of the unit root test
statistics, given the probabilities.
The programs padf
and qadf
use the tables from
A. Banerjee et al. (1993).
The programs punitroot
and qunitroot
use Fortran
routines and the tables from J.G. McKinnon (1988). Many thanks
to J.G. McKinnon putting his code and tables under the GPL license,
which made this implementation possible.
J.G. McKinnon for the underlying Fortran routine and the tables,
Diethelm Wuertz for the Rmetrics R-port.
Banerjee A., Dolado J.J., Galbraith J.W., Hendry D.F. (1993); Cointegration, Error Correction, and the Econometric Analysis of Non-Stationary Data, Oxford University Press, Oxford.
Dickey, D.A., Fuller, W.A. (1979); Distribution of the estimators for autoregressive time series with a unit root, Journal of the American Statistical Association 74, 427–431.
MacKinnon, J.G. (1996); Numerical distribution functions for unit root and cointegration tests, Journal of Applied Econometrics 11, 601–618.
Phillips, P.C.B., Perron, P. (1988); Testing for a unit root in time series regression, Biometrika 75, 335–346.
## SOURCE("fSeries.2A-UnitrootDistribution") ## qunitroot - # Asymptotic quantile of t-statistic qunitroot(0.95, trend = "nc", statistic = "t") ## qunitroot - # Finite sample quantile of n-statistic qunitroot(0.95, n.sample = 100, trend = "nc", statistic = "n") ## punitroot - # Asymptotic cumulative probability of t-statistic punitroot(1.2836, trend = "nc", statistic = "t") ## punitroot - # Finite sample cumulative probability of n-statistic punitroot(1.2836, n.sample = 100, trend = "nc", statistic = "n") ## dfTable - # Dickey-Fuller Internal Table: .dfTable(trend = "nc", statistic = "t") # Interpolate q and p-values p = 0.984 n.sample = 78 Trend = Statistic = Q = P = NULL for (trend in c("nc", "c", "ct")) { for (statistic in c("t", "n")) { Trend = c(Trend, trend) Statistic = c(Statistic, statistic) q = qdftest(p, n.sample, trend, statistic) Q = c(Q, q) P = c(P, pdftest(q, n.sample, trend, statistic)) } } data.frame(Trend, Statistic, Q, P)