Bắt đầu ngayBắt đầu miễn phí

Dự báo với mô hình MA

Giống như bạn đã làm với các mô hình AR, bạn sẽ dùng mô hình MA để dự báo dữ liệu trong mẫu và ngoài mẫu bằng hàm plot_predict() trong statsmodels.

Với chuỗi mô phỏng simulated_data_1 có \(\small \theta=-0.9\), bạn sẽ vẽ dự báo trong mẫu và ngoài mẫu. Một khác biệt lớn giữa dự báo ngoài mẫu với mô hình MA(1) so với AR(1) là với MA(1), các dự báo từ hơn một bước trong tương lai đơn giản là bằng giá trị trung bình của mẫu.

Bài tập này là một phần của khóa học

Phân tích chuỗi thời gian với Python

Xem khóa học

Hướng dẫn bài tập

  • Import lớp ARIMA và cả hàm plot_predict
  • Tạo một thể hiện của lớp ARIMA đặt tên là mod sử dụng dữ liệu mô phỏng simulated_data_1 và bậc (p,d,q) của mô hình (trong trường hợp này, với MA(1)) là order=(0,0,1)
  • Fit mô hình mod bằng phương thức .fit() và lưu vào đối tượng kết quả tên res
  • Vẽ dữ liệu trong mẫu bắt đầu từ điểm dữ liệu 950
  • Vẽ dự báo ngoài mẫu và khoảng tin cậy bằng hàm plot_predict(), bắt đầu từ điểm dữ liệu 950 và kết thúc dự báo tại điểm 1010

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.

# Import the ARIMA and plot_predict from statsmodels
from statsmodels.tsa.arima.model import ARIMA
from statsmodels.graphics.tsaplots import plot_predict

# Forecast the first MA(1) model
mod = ARIMA(___, order=___)
res = mod.fit()

# Plot the data and the forecast
fig, ax = plt.subplots()
simulated_data_1.loc[950:].plot(ax=ax)
plot_predict(res, start=___, end=___, ax=ax)
plt.show()
Chỉnh sửa và Chạy Mã