擬合 ARMA 模型
你現在已經可以把 AR 模型與 MA 模型結合成 ARMA 模型。我們從 ARMA(2,1) 模型產生了資料,$$X_t = X_{t-1} - .9 X_{t-2} + W_t + .8 W_{t-1}, $$ x <- arima.sim(model = list(order = c(2, 0, 1), ar = c(1, -.9), ma = .8), n = 250)。先觀察模擬資料,以及樣本 ACF 與 PACF 的組合,來判斷可能的模型。
回想 ARMA(\(p, q\)) 模型的理論 ACF 與 PACF 都會呈現拖尾。在這種情況下,僅從資料判斷階數不容易,可能也不清楚樣本 ACF 或樣本 PACF 是截尾還是拖尾。此時你已知真正的模型階數,所以請對產生的資料擬合 ARMA(2,1)。更一般的建模策略會在本課程後續再討論。
本練習屬於課程
R 中的 ARIMA 模型
練習說明
- 已預先載入 astsa 套件。
x中包含 250 筆 ARMA(2,1) 觀測值。 - 如同前面的練習,使用
plot()繪製x的產生資料,並用acf2()檢視樣本 ACF 與 PACF 的配對圖。 - 使用
sarima()對產生資料擬合 ARMA(2,1)。檢視 t 表,並將估計值與真實值比較。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# astsa is preloaded
# Plot x
# Plot the sample P/ACF of x
# Fit an ARMA(2,1) to the data and examine the t-table