Apakah ada cara untuk memungkinkan musiman dalam koefisien regresi?

8

Katakanlah saya memiliki serangkaian waktu, G t , dan kovariat B t . Saya ingin menemukan hubungan di antara mereka dengan model ARMA:

G t = Z t + β 0 + β 1 B t

dimana sisa Z t berikut beberapa proses ARMA.

Masalahnya adalah: Saya tahu pasti bahwa β 0 dan β 1 bervariasi dengan waktu dalam setahun. Namun saya tidak ingin memasukkan model yang terpisah untuk setiap bulan karena itu memperkenalkan diskontinuitas ke dalam seri waktu saya, yang berarti saya tidak dapat menghitung fungsi autokorelasi dari residu akhir.

Jadi, apakah ada model deret waktu (atau keluarga model, saya ingin tahu) yang memungkinkan koefisien korelasi kovariatnya berubah secara musiman?

========================

Sunting: Terima kasih untuk mereka yang menjawab di sini. Saya memutuskan untuk hanya menggunakan boneka musiman, tetapi sibuk sehingga gagal menjawab tepat waktu.

eddieisnutty
sumber
Tidak, ini bukan pertanyaan bodoh, ketika Anda bermaksud "mengubah musim", apakah maksud Anda musim berubah dari waktu ke waktu dan tidak konstan? jika itu masalahnya Anda memerlukan model yang menangani musiman stokastik, pengkodean dummy tidak akan berfungsi karena hanya menangani musiman deterministik. Lihat pertanyaan saya sebelumnya . Cukup modelZtsebagai ARIMA (p, d, q) (P, D, Q) ini harus dilakukan.
peramal

Jawaban:

6

Sunting (Gagasan yang sama diajukan oleh Stephan Kolassa beberapa menit sebelum saya mengirimkan jawaban saya. Jawaban di bawah ini masih dapat memberi Anda beberapa perincian yang relevan.)

Anda bisa menggunakan boneka musiman. Untuk kesederhanaan saya menggambarkan ini untuk seri waktu triwulanan. Dummies musiman adalah variabel indikator untuk setiap musim. Ituiboneka musiman ke-1 mengambil nilai 1 untuk pengamatan terkait musim idan 0 sebaliknya. Untuk seri triwulanan boneka musiman,SD, didefinisikan sebagai berikut:

SD=[100001000010000110001000010000100001]SDB=[B10000B20000B30000B4B5000Bn30000Bn20000Bn10000Bn]

Anda dapat mengalikan setiap kolom di SD oleh variabel penjelas Anda Bt dan dapatkan matriksnya SDB didefinisikan di atas.

Kemudian, Anda dapat menentukan model Anda sebagai berikut:

Gt=Zt+β0,sSDt+β1,sSDBt,

dimana indeksnya smenunjukkan musim. Perhatikan bahwa kami sekarang memiliki empat koefisien (12 dalam seri bulanan Anda)β1,s, satu untuk setiap kolom di SDB.

Hal yang sama untuk intersep β0 kecuali bahwa kita harus menghapus satu kolom di SDuntuk menghindari collinearity yang sempurna. Dalam seri bulanan Anda akan memasukkan misalnya 11 intersepsi musiman pertama diSD.

Menyesuaikan model misalnya dengan kemungkinan maksimum akan memberi Anda satu estimasi koefisien untuk setiap musim. Anda juga dapat menguji apakahβ0,s sama untuk semua s atau serupa jika β1,s konstan sepanjang musim.

javlacalle
sumber
1
+1. Meskipun Anda tidak ingin cocok menggunakan Kuadrat Terkecil Biasa jika Anda memiliki kesalahan ARMA.
Stephan Kolassa
1
@javlacalle +1, Bisakah kita menggunakan saja Ztsebagai ARIMA (p, d, q) (P, D, Q) bukan boneka musiman untuk menangkap musiman? Dengan begitu, Anda juga memperhitungkan musiman stokastik selain musiman deterministik. Meskipun ini tidak menjawab pertanyaan OP tentang musiman sebagai koefisien regresi, mungkin ada baiknya untuk menyoroti perbedaannya.
peramal
1
@ peramal Saya pikir mengejar OP adalah untuk mengukur pengaruh Bt di Gtdi musim yang berbeda. Ini dapat ditangkap dengan memungkinkan koefisien yang bervariasi secara musiman,βs,1. Jikaβ1 konstan untuk semua musim maka kami tidak dapat mengukur efek Btpada setiap musim dan uji apakah perbedaannya signifikan. Apalagi kalauβ1 diperbaiki, mengamati musiman dalam residu dapat berarti bahwa ada efek musiman yang tidak ditangkap oleh koefisien tunggal β1, daripada kebutuhan untuk memperpanjang model untuk Ztdengan menggunakan model ARIMA musiman.
javlacalle
1
@ Frank intersep diatur ke nol untuk musim yang ditinggalkan. Koefisien intersep terkait dengan koefisien yang tersisa diinterpretasikan sebagai perubahan sehubungan dengan nilai rata-rata musim yang dihapus (yang tidak harus nol, tetapi nilai ditentukan oleh koefisien dan nilai variabel yang tersisa pada musim itu).
javlacalle
1
@ Terus Jika 11 kolom digunakan di SDB, maka pada prinsipnya Anda akan menyertakan konstanta α(kolom yang); jika tidak, residual mungkin tidak nol rata-rata:Gt=α+Zt+β0,sSDt+β1,sSDBt. Pada musim ke-12 (yang tertinggal), nilai yang diharapkan dariGt adalah α+β1,12SDBt. Koefisienβ0,s, s=1,,11 ditafsirkan sebagai perubahan sehubungan dengan estimasi α.
javlacalle
5

Tentu ada. Cukup sertakan boneka bulanan dalam interaksi denganBt. MembiarkanMtm menunjukkan boneka yaitu 1 jika waktu t sesuai dengan bulan mdan 0 sebaliknya. Kemudian paskan regresi berikut dengan kesalahan ARMA:

Gt=βMt+γBtMt+Zt

dimana Zt adalah ARMA (p, q) dan β dan γ adalah vektor parameter dengan panjang 12.

Anda dapat melakukan pemasangan aktual menggunakan R dengan nlmepaket, menggunakan gls()fungsi dan menentukan corARMA()struktur korelasi .

Stephan Kolassa
sumber
Bagaimana jika Anda tidak memiliki banyak titik data dan ingin mempertahankan parameter? Apakah ada cara untuk mengurangi musim sambil menjaga parameter tetap minimum?
Frank
1
@ Frank: jika kita memiliki terlalu sedikit data untuk mendukung model yang kompleks, maka saya pribadi akan mencari regularisasi, seperti laso, jaring elastis atau pendekatan Bayesian.
Stephan Kolassa
Terima kasih telah menjawab pertanyaan lama seperti itu. Boleh saya bertanya, harusβMt dan γBtMtmasing-masing memiliki 12 istilah? Atau seharusnyaβMtpunya 11 istilah? Saya belajar tentang "perangkap variabel dummy," tetapi saya tidak dapat menemukan referensi yang secara jelas membahas kasus ini. Misalnya, apakah model ini berfungsi? Atau apakah saya perlu mengurangi panjangβ vektor dengan 1? Yt=βMt+γBtMt+f(t)+Zt
Frank
1
@ Jujur: ya, keduanya harus memiliki 12 syarat karena tidak ada intersep . Jika Anda menghapus satu istilah, katakanβ1, itu artinya rata-rata dalam sebulan 1 untuk Bt=0harus nol, yang biasanya tidak masuk akal. Atau, Anda bisa menyertakan intersep dan istilah untukBt sebagai efek utama (tanpa interaksi dengan M), lalu tinggalkan satu entri dari keduanya β dan γ - yang akan memberimu 1+1+11+11=24parameter, persis sebanyak model yang saya usulkan. Itu hanya reparameterisasi. Model yang Anda usulkan dalam komentar Anda berfungsi (dengan asumsi deterministikf).
Stephan Kolassa
1
Mereka seharusnya, ya
Stephan Kolassa
4

Jika Anda tidak ingin mendiskreditkan efek musiman, Anda dapat mengasumsikan bahwa koefisien regresi bervariasi secara siklik sebagai fungsi dari waktu tahun, yaitu β0(t)=w0+w1sinnt+w2cosnt and β1(t)=w3+w4sinnt+w5cosnt, then if you substitute these into your linear model, you should get something of the form

Gt=Zt+wo+w1sinnt+w2cosnt+w3Bt+w4Btsinnt+w5Btcosnt

You could fit this model by using OLS regression (or whatever method you are already using) with the additional covariates sinnt, cosnt, Btsinnt and Btcosnt, where n is whatever constant you need to represent a year (2π/365 for a daily time-series).

This wouldn't introduce any discontinuities in the model as the seasonality in the regression coefficients are smooth functions of time. I suspect if you added sine and cosine components representing harmonics of the annual cycle you could model deviations from simple sinusoidal variation in the regression coefficients (Fourier series type approach).

Caveat: Been a long day, so I may have made a stupid error somewhere.

Dikran Marsupial
sumber
(+1) A trigonometric approach is an interesting alternative. Another appeal of the trigonometric approach is that it may require fewer parameters. Your equation uses 6 parameters against 11+12=23 in the approach that I discussed in my answer. In practice we would probably need to include in addition to the fundamental seasonal frequency (2π/12 in a monthly series) some of its harmonics, which will require more parameters. But we may get a reasonable fit without including all the harmonics and hence the number of parameters to be estimated can be reduced.
javlacalle
A disadvantage that I see is that the interpretation is less straightforward in the context of a regression model. The interpretation of the 0-1 seasonal dummies can be made in terms of months rather than cycles of seasonal periodicity. We may conclude for example that the effect of temperature on sales of a certain product is the highest in August and has no major effect in March. In the trigonometric approach we would conclude for example that the effect of temperature on sales follows a cycle that is repeated every 6 months. The former interpretation may be more informative.
javlacalle
You could still do that with this approach, you could plot the variation in each β0 and β1 by a weighted sum of the sine and cosine components, and you could discretise that to see how sales vary by month. The original question suggested that discontinuities were not wanted, which implies a smooth variation. At the end of the day, the right approach depends on what it is you are trying to find out.
Dikran Marsupial
1
As far as I understood, the concern of the OP was with discontinuities in the residuals, fitting 12 regression models (one for each month) will lead to 12 series of residuals instead of one series of residuals where to carry out some diagnostics looking at their autocorrelations. Both the 0-1 dummies and the trigonometric dummies would be an appropriate way to deal with this issue. Which one is a more natural approach would depend, as you say, on the purpose of the analysis and the kind of information that is wanted.
javlacalle
Let's underline that the question is general and only the tag econometrics discloses the OP's interest in that side. For environmental time series data the trigonometric approach is often highly successful and natural, while conversely months have little or no meaning even if the data are reported in that way.
Nick Cox
2

Fit the mean and the harmonics of the seasonal cycle to the time series of x and y. These provide the intercept terms. Then, subtract them from x and y to create anomalies. Use these anomalies x' and y' to compute seasonally varying regression slope coefficients: Fit the array product between the x' and y' with the mean and leading harmonics to the seasonal cycle. Do the same for the variance of the x'. Then divide the seasonal cycle fit to the covariance by the seasonal cycle fit to the variance to provide continuously evolving slope coefficients. For details, see http://onlinelibrary.wiley.com/doi/10.1002/qj.3054/full

Paul Roundy
sumber