Menafsirkan hasil ur.df (Dickey-Fuller unit root test) R

12

Saya menjalankan tes root unit berikut (Dickey-Fuller) pada serangkaian waktu menggunakan ur.df()fungsi dalam urcapaket.

Perintahnya adalah:

summary(ur.df(d.Aus, type = "drift", 6))

Outputnya adalah:

############################################### 
# 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 
-0.266372 -0.036882 -0.002716  0.036644  0.230738 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)   
(Intercept)  0.001114   0.003238   0.344  0.73089   
z.lag.1     -0.010656   0.006080  -1.753  0.08031 . 
z.diff.lag1  0.071471   0.044908   1.592  0.11214   
z.diff.lag2  0.086806   0.044714   1.941  0.05279 . 
z.diff.lag3  0.029537   0.044781   0.660  0.50983   
z.diff.lag4  0.056348   0.044792   1.258  0.20899   
z.diff.lag5  0.119487   0.044949   2.658  0.00811 **
z.diff.lag6 -0.082519   0.045237  -1.824  0.06874 . 
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

Residual standard error: 0.06636 on 491 degrees of freedom
Multiple R-squared: 0.04211,    Adjusted R-squared: 0.02845 
F-statistic: 3.083 on 7 and 491 DF,  p-value: 0.003445 


Value of test-statistic is: -1.7525 1.6091 

Critical values for test statistics: 
      1pct  5pct 10pct
tau2 -3.43 -2.86 -2.57
phi1  6.43  4.59  3.78
  1. Apa arti kode signifikansi (kode Signifikan) artinya? Saya perhatikan bahwa beberapa di antaranya dituliskan pada: z.lag.1, z.diff.lag.2, z.diff.lag.3 (kode signifikansi ".") Dan z.diff.lag.5 (the " ** "kode signifikansi).

  2. Output memberi saya dua (2) nilai statistik uji: -1.7525 dan 1.6091. Saya tahu bahwa statistik tes ADF adalah yang pertama (yaitu -1.7525). Lalu apa yang kedua?

  3. Akhirnya, untuk menguji hipotesis untuk root unit pada tingkat signifikansi 95%, saya perlu membandingkan statistik uji ADF saya (yaitu -1,7525) dengan nilai kritis, yang biasanya saya dapatkan dari tabel. Output di sini tampaknya memberi saya nilai kritis. Namun, pertanyaannya adalah: nilai kritis mana antara "tau2" dan "phi1" yang harus saya gunakan.

Terima kasih atas tanggapan Anda.

SavedByJESUS
sumber
1 - kode tanda harus jelas ... lag memiliki bintang ganda sehingga p = 0,01 2- tes yang berbeda H0: "tidak ada" atau "melayang" atau "tren" 3 - nilai kritis, sekali lagi, hal yang sama, tergantung pada yang H0 Anda ingin pertimbangkan
joint_p
@joint_p Saya minta maaf, tapi saya hanya pemula. Jawaban Anda sangat mudah. Bisakah Anda menjelaskan lebih lanjut tentang apa yang Anda katakan? Aku akan sangat menghargainya. Terima kasih.
SavedByJESUS
amazon.com/Analysis-Integrated-Cointegrated-Time-Use/dp/… ini adalah buku yang sangat bagus, saya biasa mempelajarinya
joint_p

Jawaban:

17

Tampaknya pencipta perintah R khusus ini menganggap seseorang akrab dengan formula Dickey-Fuller asli, jadi tidak memberikan dokumentasi yang relevan untuk bagaimana menafsirkan nilai-nilai. Saya menemukan bahwa Enders adalah sumber yang sangat membantu (Applied Econometric Time Series 3e, 2010, hlm. 206-209 - Saya membayangkan edisi lain juga baik-baik saja). Di bawah ini saya akan menggunakan data dari paket URCA, pendapatan riil di Denmark sebagai contoh.

> income <- ts(denmark$LRY)

Mungkin bermanfaat untuk menggambarkan 3 formula berbeda yang digunakan Dickey-Fuller untuk mendapatkan hipotesis yang berbeda, karena ini cocok dengan opsi "type" ur.df. Enders menetapkan bahwa dalam ketiga kasus ini, istilah konsisten yang digunakan adalah gamma, koefisien untuk nilai y sebelumnya, istilah lag. Jika gamma = 0, maka ada unit root (random walk, nonstationary). Di mana hipotesis nol adalah gamma = 0, jika p <0,05, maka kami menolak nol (pada tingkat 95%), dan menganggap tidak ada unit root. Jika kami gagal menolak nol (p> 0,05) maka kami menganggap unit root ada. Dari sini, kita dapat melanjutkan untuk menafsirkan tau dan phi.

1) type = "none": (rumus dari Enders hal. 208)Δy(t)=γy(t-1)+e(t)

(di mana adalah istilah kesalahan, dianggap sebagai white noise; dari ; mengacu pada yang sebelumnya nilai y, begitu juga dengan istilah lag)e(t)γ=Sebuah-1y=Sebuahy(t-1)+e(t)y(t-1)

Untuk tipe = "tidak ada," tau (atau tau1 dalam output R) adalah hipotesis nol untuk gamma = 0. Dengan menggunakan contoh pendapatan Denmark, saya mendapatkan "Nilai statistik uji adalah 0,7944" dan "Nilai kritis untuk statistik uji adalah : tau1 -2.6 -1.95 -1.61. Mengingat bahwa statistik uji ada di dalam semua 3 wilayah (1%, 5%, 10%) di mana kita gagal menolak nol, kita harus menganggap data adalah jalan acak, yaitu bahwa akar unit hadir. Dalam kasus ini, tau1 merujuk pada hipotesis gamma = 0. "z.lag1" adalah istilah gamma, koefisien untuk istilah lag (y (t-1)), yang merupakan p = 0,431, yang kami gagal tolak sebagai signifikan, hanya menyiratkan bahwa gamma tidak signifikan secara statistik untuk model ini. Berikut adalah output dari R

> summary(ur.df(y=income, type = "none",lags=1))
> 
> ############################################### 
> # Augmented Dickey-Fuller Test Unit Root Test # 
> ############################################### 
> 
> Test regression none 
> 
> 
> Call:
> lm(formula = z.diff ~ z.lag.1 - 1 + z.diff.lag)
> 
> Residuals:
>       Min        1Q    Median        3Q       Max 
> -0.044067 -0.016747 -0.006596  0.010305  0.085688 
> 
> Coefficients:
>             Estimate Std. Error t value Pr(>|t|)
> z.lag.1    0.0004636  0.0005836   0.794    0.431
> z.diff.lag 0.1724315  0.1362615   1.265    0.211
> 
> Residual standard error: 0.0251 on 51 degrees of freedom
> Multiple R-squared:  0.04696,   Adjusted R-squared:  0.009589 
> F-statistic: 1.257 on 2 and 51 DF,  p-value: 0.2933
> 
> 
> Value of test-statistic is: 0.7944 
> 
> Critical values for test statistics: 
>      1pct  5pct 10pct
> tau1 -2.6 -1.95 -1.61

2) type = "drift" (pertanyaan spesifik Anda di atas):: (rumus dari Enders hal. 208)Δy(t)=Sebuah0+γy(t-1)+e(t)

γ=0γ=0
Istilah phi1 mengacu pada hipotesis kedua, yang merupakan hipotesis nol gabungan dari a0 = gamma = 0. Ini berarti bahwa KEDUA nilai-nilai tersebut diuji menjadi 0 pada saat yang sama. Jika p <0,05, kami menolak nol, dan menganggap bahwa SETIDAKNYA salah satu dari ini adalah salah - yaitu satu atau kedua istilah a0 atau gamma bukan 0. Gagal menolak nol ini menyiratkan bahwa KEDUA a0 DAN gamma = 0, menyiratkan 1) bahwa gamma = 0 oleh karena itu unit root hadir, DAN 2) a0 = 0, jadi tidak ada istilah penyimpangan. Ini adalah output R.

> summary(ur.df(y=income, type = "drift",lags=1))
> 
> ############################################### 
> # 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 
> -0.041910 -0.016484 -0.006994  0.013651  0.074920 
> 
> Coefficients:
>             Estimate Std. Error t value Pr(>|t|)
> (Intercept)  0.43453    0.28995   1.499    0.140
> z.lag.1     -0.07256    0.04873  -1.489    0.143
> z.diff.lag   0.22028    0.13836   1.592    0.118
> 
> Residual standard error: 0.0248 on 50 degrees of freedom
> Multiple R-squared:  0.07166,   Adjusted R-squared:  0.03452 
> F-statistic:  1.93 on 2 and 50 DF,  p-value: 0.1559
> 
> 
> Value of test-statistic is: -1.4891 1.4462 
> 
> Critical values for test statistics: 
>       1pct  5pct 10pct
> tau2 -3.51 -2.89 -2.58
> phi1  6.70  4.71  3.86

Δy(t)=Sebuah0+gSebuahmmSebuahy(t-1)+Sebuah2(t)+e(t)

(di mana a2 (t) adalah istilah tren waktu) Hipotesis (dari Enders hal. 208) adalah sebagai berikut: tau: gamma = 0 phi3: gamma = a2 = 0 phi2: a0 = gamma = a2 = 0 Ini mirip dengan output R. Dalam kasus ini, statistik uji adalah -2,4216 2,1927 2,9343 Dalam semua kasus ini, ini termasuk dalam zona "gagal menolak nol" (lihat nilai kritis di bawah). Apa tau3 menyiratkan, seperti di atas, adalah bahwa kita gagal menolak nol dari unit root, menyiratkan unit root hadir. Gagal menolak phi3 menyiratkan dua hal: 1) gamma = 0 (unit root) DAN 2) tidak ada istilah tren waktu, yaitu, a2 = 0. Jika kita menolak nol ini, itu akan menyiratkan bahwa satu atau kedua istilah ini bukan 0. Gagal menolak phi2 menyiratkan 3 hal: 1) gamma = 0 DAN 2) tidak ada istilah tren waktu DAN 3) tidak ada istilah drift, yaitu gamma itu = 0, a0 = 0, dan a2 = 0.
Ini adalah output R.

> summary(ur.df(y=income, type = "trend",lags=1))
> 
> ############################################### 
> # Augmented Dickey-Fuller Test Unit Root Test # 
> ############################################### 
> 
> Test regression trend 
> 
> 
> Call:
> lm(formula = z.diff ~ z.lag.1 + 1 + tt + z.diff.lag)
> 
> Residuals:
>       Min        1Q    Median        3Q       Max 
> -0.036693 -0.016457 -0.000435  0.014344  0.074299 
> 
> Coefficients:
>               Estimate Std. Error t value Pr(>|t|)  
> (Intercept)  1.0369478  0.4272693   2.427   0.0190 *
> z.lag.1     -0.1767666  0.0729961  -2.422   0.0192 *
> tt           0.0006299  0.0003348   1.881   0.0659 .
> z.diff.lag   0.2557788  0.1362896   1.877   0.0665 .
> ---
> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
> 
> Residual standard error: 0.02419 on 49 degrees of freedom
> Multiple R-squared:  0.1342,    Adjusted R-squared:  0.08117 
> F-statistic: 2.531 on 3 and 49 DF,  p-value: 0.06785
> 
> 
> Value of test-statistic is: -2.4216 2.1927 2.9343 
> 
> Critical values for test statistics: 
>       1pct  5pct 10pct
> tau3 -4.04 -3.45 -3.15
> phi2  6.50  4.88  4.16
> phi3  8.73  6.49  5.47

Dalam contoh spesifik Anda di atas, untuk data d.Aus, karena kedua statistik uji berada di dalam zona "gagal untuk menolak", itu menyiratkan bahwa gamma = 0 DAN a0 = 0, yang berarti bahwa ada unit root, tetapi tidak ada istilah drift.

Jeremy Townley
sumber
@ Jeremy, Di jawaban terperinci Anda bagian 3 (dengan tren) Anda menyebutkan "Dalam hal ini, statistik pengujian adalah -2.4216 2.1927 2.9343. Dalam semua kasus ini, ini termasuk dalam zona" gagal menolak nol "(lihat kritis nilai di bawah). " Pertanyaan saya adalah apakah 2.1927 adalah statistik uji untuk phi2, apakah harus diperiksa terhadap phi2 6.50 4.88 4.16? Dan jika itu benar, bagaimana kondisi untuk menerima phi2 H0 (unit root tanpa tren dan pergeseran)?
Saraz
5

Seperti yang ditunjukkan bersama-p, kode signifikansi cukup standar dan mereka sesuai dengan nilai-p, yaitu signifikansi statistik dari uji hipotesis. p-value 0,01 berarti kesimpulan tersebut benar dalam kepercayaan 99%.

Artikel Wikipedia tentang Dickey-Fuller menjelaskan tiga versi tes Dickey-Fuller: "unit root", "unit root dengan drift", dan "unit root dengan drift dan tren waktu deterministik", atau apa yang disebut dalam urcadokumentasi sebagai tipe = "tidak ada", "melayang", dan "tren", masing-masing.

Masing-masing tes ini adalah regresi linier yang semakin kompleks. Di semuanya ada root, tetapi di drift juga ada koefisien drift, dan di trend juga ada koefisien tren. Masing-masing koefisien ini memiliki tingkat signifikansi terkait. Sementara signifikansi dari koefisien akar adalah yang paling penting dan fokus utama dari uji DF, kami mungkin juga tertarik untuk mengetahui apakah tren / drift juga signifikan secara statistik. Setelah bermain-main dengan berbagai mode dan melihat koefisien mana yang muncul / hilang dalam uji-t, saya dapat dengan mudah mengidentifikasi koefisien mana yang sesuai dengan uji-t mana.

Mereka dapat ditulis sebagai berikut (dari halaman wiki):

Δyt=δyt-1+kamut

Δyt=δyt-1+Sebuah0+kamut

Δyt=δyt-1+Sebuah0+Sebuah1t+kamut

δSebuah0Sebuah1δSebuah0Sebuah1

Paul
sumber
1

Ringkasan Tes Dickey Fuller

Info lebih lanjut dalam catatan kuliah Roger Perman tentang tes unit root

Lihat juga tabel 4.2 dalam Enders, Applied Econometric Time Series (4e), yang merangkum berbagai hipotesis yang dirujuk oleh statistik uji ini. Konten setuju dengan gambar yang disediakan di atas.

pengguna3096626
sumber
1

Saya menemukan jawaban Jeramy cukup mudah untuk diikuti, tetapi terus-menerus menemukan diri saya mencoba untuk berjalan melalui logika dengan benar dan membuat kesalahan. Saya membuat kode fungsi R yang menginterpretasikan masing-masing dari ketiga jenis model, dan memberikan peringatan jika ada hasil yang tidak konsisten atau tidak meyakinkan (saya tidak berpikir akan ada inkonsistensi jika saya memahami matematika ADF dengan benar, tetapi saya pikir masih bagus) periksa apakah fungsi ur.df memiliki cacat).

Silakan lihat. Senang menerima komentar / koreksi / peningkatan.

https://gist.github.com/hankroark/968fc28b767f1e43b5a33b151b771bf9

Hank Roark
sumber
Fungsi Anda sepertinya dibuat dengan banyak upaya; Namun, menambahkan contoh yang dapat direproduksi ke dalamnya akan sangat membantu. Anda mungkin ingin memilih deret waktu (mungkin yang sudah tersedia dalam R atau dalam paket) jalankan tes dickey fuller di atasnya dan kemudian gunakan fungsi Anda hanya untuk orang yang tertarik untuk melihat apa yang dilakukannya.
SavedByJESUS
0

posting dan jawaban yang sangat menarik. Saya hanya memiliki keraguan sehubungan dengan tabel yang dijelaskan oleh user3096626. Perangkat lunak mana yang dilaporkan dalam tes ADF yang menghasilkan nilai \tau_{\alpha \mu}, \tau_{\alpha \tau}dan \tau_{\beta \tau}? Jelas, R tidak

Yon Cubas
sumber
-4

phi1 phi2 phi3 setara dengan F-tes dalam kerangka ADF

Aleh
sumber
4
Bisakah Anda mengembangkan sedikit jawaban ini? Saat ini agak samar. Mengapa ini harus setara?
Andy