Dự báo với mô hình ARIMA
Phương pháp tự động ở bài trước đã chọn mô hình ARIMA(0,1,1) có drift cho dữ liệu austa, tức là
\(y_t = c + y_{t-1} + \theta e_{t-1} + e_t.\)
Bây giờ bạn sẽ thử nghiệm với các mô hình ARIMA khác cho bộ dữ liệu để xem chúng ảnh hưởng thế nào đến dự báo.
Hàm Arima() có thể dùng để chọn một mô hình ARIMA cụ thể. Tham số đầu tiên, order, nhận một vector chỉ định các giá trị \(p\), \(d\) và \(q\). Tham số thứ hai, include.constant, là boolean xác định có đưa hằng số \(c\) (hay drift) vào hay không. Dưới đây là ví dụ một chuỗi pipe để vẽ dự báo của usnetelec từ mô hình ARIMA(2,1,2) có drift:
> usnetelec %>%
Arima(order = c(2,1,2), include.constant = TRUE) %>%
forecast() %>%
autoplot()
Trong các ví dụ này, hãy chú ý cách các mô hình khác nhau ảnh hưởng đến dự báo và khoảng dự báo. Dữ liệu austa đã sẵn sàng trong không gian làm việc của bạn.
Bài tập này là một phần của khóa học
Dự báo bằng R
Hướng dẫn bài tập
- Vẽ dự báo từ mô hình ARIMA(0,1,1) không có drift.
- Vẽ dự báo từ mô hình ARIMA(2,1,3) có drift.
- Vẽ dự báo từ mô hình ARIMA(0,0,1) có hằng số.
- Vẽ dự báo từ mô hình ARIMA(0,2,1) không có hằng số.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Plot forecasts from an ARIMA(0,1,1) model with no drift
austa %>% Arima(order = c(___, ___, ___), include.constant = ___) %>% ___ %>% ___
# Plot forecasts from an ARIMA(2,1,3) model with drift
austa %>% Arima(___, ___) %>% ___ %>% ___
# Plot forecasts from an ARIMA(0,0,1) model with a constant
austa %>% Arima(___, ___) %>% ___ %>% ___
# Plot forecasts from an ARIMA(0,2,1) model with no constant
austa %>% Arima(___, ___) %>% ___ %>% ___