# ur.df interpretation of $t$-statistic

After performing an ADF test with the function ur.df I get the result below.

My question is, why do I get two $t$-statistics?

I thought this test checks two $H_0$ hypotheses: The first one that there is a unit root and the second one the joint hypothesis that there is a unit root and there is no drift. I assume for the first one we need only one $t$-statistic, while for the latter an $F$-statistic as it is a joint hypothesis.

###############################################
# Augmented Dickey-Fuller Test Unit Root Test #
###############################################

Test regression drift

Call:
lm(formula = z.diff ~ z.lag.1 + 1 + z.diff.lag)

Residuals:
Min      1Q  Median      3Q     Max
-42.894  -5.809   0.153   6.279  72.989

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept)  2.221812   2.027465   1.096    0.273
z.lag.1     -0.002348   0.002314  -1.015    0.310
z.diff.lag  -0.008356   0.027735  -0.301    0.763

Residual standard error: 10.9 on 1301 degrees of freedom
Multiple R-squared:  0.0008888, Adjusted R-squared:  -0.0006471
F-statistic: 0.5787 on 2 and 1301 DF,  p-value: 0.5608

Value of test-statistic is: -1.0147 0.7078

Critical values for test statistics:
1pct  5pct 10pct
tau2 -3.43 -2.86 -2.57
phi1  6.43  4.59  3.78

• Your statements make sense, but as you see the output is not what you would like it to be. I checked the help file for the ur.df function -- no luck. I skimmed through a few time series textbooks (in some of them R examples are used) -- again, no luck. Perhaps I just missed it, or perhaps I looked at wrong sources. But so far I think you will have to do with individual hypotheses rather than a joint hypothesis... Commented May 18, 2015 at 19:54

The different statistics are for different tests. With or without trend and with or without drift and unit root. I think if you write in R (using the ur.df function from the "urca" package),

t.d.u.MODEL <- ur.df(DEPVAR, lags=XX, type="trend")


you test both for trend, drift and unit root. I think the notation in the follwing command follows Enders "Applied Econometric Time Series" textbook.

t.d.u.MODEL@teststat   # gives you t-stats with labels of coefficents

t.d.u.MODEL@cval       # gives you critical values


EDIT: Here is an example on how you should interpret the two t-statistics (notice that you have to scroll in the "code-window").

   > d.u.pce <- ur.df(pce, lags=3, type="drift")
> summary(d.u.pce)

###############################################
# Augmented Dickey-Fuller Test Unit Root Test #
###############################################

Test regression drift

Call:
lm(formula = z.diff ~ z.lag.1 + 1 + z.diff.lag)

Residuals:
Min      1Q  Median      3Q     Max
-65.551  -9.446   1.567  12.744  34.394

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 17.173227  11.551492   1.487   0.1411
z.lag.1     -0.003154   0.004391  -0.718   0.4747
z.diff.lag1  0.115378   0.108963   1.059   0.2929
z.diff.lag2  0.125322   0.108807   1.152   0.2529
z.diff.lag3  0.233230   0.108960   2.141   0.0354 *
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 17.81 on 79 degrees of freedom
Multiple R-squared:  0.1129, Adjusted R-squared:  0.06799
F-statistic: 2.514 on 4 and 79 DF,  p-value: 0.04809

Value of test-statistic is: -0.7182 4.1235

Critical values for test statistics:
1pct  5pct 10pct
tau2 -3.51 -2.89 -2.58
phi1  6.70  4.71  3.86

#gives the same statistics as above but with "paramamter names"
> d.u.pce@teststat
tau2     phi1
statistic -0.7182212 4.123487

> d.u.pce@cval
1pct  5pct 10pct
tau2 -3.51 -2.89 -2.58
phi1  6.70  4.71  3.86

#INTERPRETATION
## Reject the null-hypothesis of a unit root with drift if:
#  Tau_2-stat (t) < Tau_2 (critical value)
#  In our case: We  CANNOT reject the hypothesis that
#  there is a unit root with drift since -0.718 > -2.89

## Reject the null-hypothesis of a unit root with no drift if (i.e. single unit root test):
#  Phi_1-stat (F) > Phi_1 (critical value)
#  In our case: We CANNOT rejcect the null since 4.12 < 4.71

• How would you reconcile your answer with the fact that there are two $t$-values in the output shown in the original post? ur.df(..., type="trend") does not yield an $F$-statistic (with a non-standard null distribution) for a joint test for the null hypothesis {zero trend, no drift, a unit root} but rather yields two $t$-statistics. Commented May 19, 2015 at 17:39
• I think @efi is not testing for a trend but is using the command, ur.df(...,type="drift"), hence he only gets two t-statistics. Commented May 20, 2015 at 20:04
• That may be right. Commented May 20, 2015 at 20:24
• @RichardHardy Do you know why the answer rejects the first hypothesis if tau2 < critical value, but reject the second if phi1 > critical value?
– Nox
Commented Apr 27, 2017 at 14:48
• @Nox, you normally reject something that is more extreme than the critical value. If you look at the progression of critical values for 10%, then 5% and then 1% you will realize that for tau2, the extemity is going to the left on the real line, while for phi1 it is going to the right. Commented Apr 27, 2017 at 15:21