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

Ước lượng mô hình random walk

Với một chuỗi thời gian y, ta có thể khớp mô hình random walk có độ trôi (drift) bằng cách lấy sai phân bậc một của dữ liệu, sau đó khớp mô hình white noise (WN) cho dữ liệu đã sai phân bằng lệnh arima() với đối số order = c(0, 0, 0)).

Lệnh arima() sẽ hiển thị thông tin/đầu ra về mô hình đã khớp. Dưới tiêu đề Coefficients: là biến độ trôi ước lượng, được đặt tên là intercept. Sai số chuẩn (xấp xỉ) của nó (hoặc s.e.) được cung cấp ngay bên dưới. Phần phương sai của thành phần WN trong mô hình cũng được ước lượng dưới nhãn sigma^2.

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 bằng R

Xem khóa học

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

  • Chuỗi thời gian random_walk đã được nạp sẵn và hiển thị ở hình bên. Dùng diff() để tạo sai phân bậc một của dữ liệu. Lưu vào rw_diff.
  • Dùng ts.plot() để vẽ dữ liệu đã sai phân
  • Dùng arima() để khớp mô hình WN cho dữ liệu đã sai phân. Thiết lập đối số xrw_difforderc(0, 0, 0). Lưu mô hình vào model_wn.
  • Lưu giá trị intercept của model_wn vào int_wn. Bạn có thể lấy giá trị này bằng model_wn$coef.
  • Dùng ts.plot() để vẽ lại đồ thị gốc của random_walk.
  • Thêm xu hướng thời gian ước lượng vào đồ thị bên cạnh bằng hàm abline(). Bạn có thể dùng int_wn làm đối số thứ hai.

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.

# Difference your random_walk data
rw_diff <- 

# Plot rw_diff


# Now fit the WN model to the differenced data
model_wn <-

# Store the value of the estimated time trend (intercept)
int_wn <- 

# Plot the original random_walk data


# Use abline(0, ...) to add time trend to the figure

Chỉnh sửa và Chạy Mã