Bagaimana cara menghitung nilai p-parameter untuk model ARIMA dalam R?


23

Ketika melakukan penelitian deret waktu dalam R, saya menemukan bahwa arima hanya menyediakan nilai-nilai koefisien dan kesalahan standar model pas. Namun, saya juga ingin mendapatkan nilai p dari koefisien.

Saya tidak menemukan fungsi yang memberikan signifikansi koefisien.

Jadi saya ingin menghitungnya sendiri, tetapi saya tidak tahu tingkat kebebasan dalam distribusi koefisien t atau chisq. Jadi pertanyaan saya adalah bagaimana cara mendapatkan nilai-p untuk koefisien model arima yang dipasang di R?


9
Mengapa Anda menginginkan nilai-p? Tes signifikansi untuk koefisien model AR tidak terlalu membantu karena signifikansi bukan cara yang baik untuk memilih urutan model. Gunakan AIC sebagai gantinya.
Rob Hyndman

1
Seringkali lebih dari satu model cocok dengan data. Jadi biasanya saya senang memiliki lebih dari satu diagnostik. Jadi jika saya sudah menggunakan pacf / acf, AIC / BIC (mungkin juga akurasi perkiraan) dan masih tidak dapat memilih antara dua model - apakah ada yang salah dengan melihat koefisien signifikansi juga?
hans0l0

Jawaban:


4

"Nilai t" adalah rasio koefisien terhadap kesalahan standar. Derajat kebebasan (ndf) adalah jumlah pengamatan dikurangi urutan maksimum perbedaan dalam model dikurangi jumlah koefisien yang diperkirakan. "Nilai F" akan menjadi kuadrat dari "nilai t" Untuk menghitung probabilitas dengan tepat Anda harus memanggil fungsi chi-square non-sentral dan meneruskan nilai F dan derajat kebebasan (1, ndf) atau mungkin hanya memanggil pencarian fungsi F.


Terimakasih banyak! Saya menulisnya seperti ini ... Tetapi mengejutkan saya bahwa hampir semua parameter tidak signifikan ... Tetapi dalam SAS dikatakan bahwa mereka signifikan ... Jadi saya ragu apakah ada kesalahan dalam kata-kata pemrograman saya ....
Lisa

apa yang saya tulis: t = rep (0,5) std = rep (0,5) pvalue = rep (0,5) nobs = 369 npara = 5 untuk (i dalam 1: 5) {std [i] = sqrt ( fit coef [i] / std [i] pvalue [i] = 1 - pt (t [i], nobs-npara) }var.coef[i,i])t[i]=fit
Lisa

Penggunaan hasil dari program SAS yang tidak terdeskripsikan hampir tidak merupakan bukti kebenaran statistik. SAS bukan oracle. Sayang sekali popup SO-AskAnExpert yang diperkenalkan pada 1 April begitu melingkar dalam strategi penalarannya, eh.
DWin

22

Karena arimamenggunakan kemungkinan maksimum untuk estimasi, koefisien secara asimtotik normal. Oleh karena itu, bagi koefisien dengan kesalahan standar mereka untuk mendapatkan z-statistik dan kemudian menghitung nilai-p. Berikut adalah contoh dengan di R dengan contoh pertama dari arima halaman bantuan:

> aa <- arima(lh, order = c(1,0,0))
> aa

Call:
arima(x = lh, order = c(1, 0, 0))

Coefficients:
         ar1  intercept
      0.5739     2.4133
s.e.  0.1161     0.1466

sigma^2 estimated as 0.1975:  log likelihood = -29.38,  aic = 64.76
> (1-pnorm(abs(aa$coef)/sqrt(diag(aa$var.coef))))*2
         ar1    intercept 
1.935776e-07 0.000000e+00 

Baris terakhir memberikan nilai-p.


H0:coef=0.0H1:coef0,0

Anda bisa melakukan ini melalui rasio log-likelihood, karena model diperkirakan menggunakan log-likelihood.
mpiktas

λ-2λχ2nn

10

Anda juga dapat menggunakan coeftestdari lmtestpaket:

> aa <- arima(lh, order = c(1,0,0))

> coeftest(aa)

z test of coefficients:

          Estimate Std. Error z value  Pr(>|z|)    
ar1        0.57393    0.11614  4.9417 7.743e-07 ***
intercept  2.41329    0.14661 16.4602 < 2.2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.