1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Dự báo bằng R

Connected

Bài tập

Tạo đối tượng chuỗi thời gian trong R

Một chuỗi thời gian có thể được hiểu là một vector hoặc ma trận số kèm theo thông tin về thời điểm các con số đó được ghi nhận. Thông tin này được lưu trong một đối tượng ts trong R. Trong hầu hết các bài tập, bạn sẽ dùng các chuỗi thời gian thuộc các gói sẵn có. Tuy nhiên, nếu muốn làm việc với dữ liệu của riêng mình, bạn cần biết cách tạo một đối tượng ts trong R.

Hãy xem ví dụ usnim_2002 bên dưới, chứa biên lợi nhuận lãi ròng của các ngân hàng Mỹ trong năm 2002 (nguồn: FFIEC).

> usnim_2002
               usnim
1   2002-01-01  4.08
2   2002-04-01  4.10
3   2002-07-01  4.06
4   2002-10-01  4.04

> # ts(data, start, frequency, ...)
> usnim_ts = ts(usnim_2002[, 2], start = c(2002, 1), frequency = 4)

Hàm ts() nhận ba đối số:

  • data được đặt là toàn bộ usnim_2002 ngoại trừ cột ngày; cột ngày không cần thiết vì đối tượng ts sẽ lưu trữ thông tin thời gian riêng.
  • start có dạng c(year, period) để chỉ thời điểm của quan sát đầu tiên. Ở đây, January tương ứng kỳ 1; tương tự, ngày bắt đầu vào April sẽ là 2, July là 3, và October là 4. Như vậy, period tương ứng với quý trong năm.
  • frequency được đặt là 4 vì dữ liệu theo quý.

Trong bài tập này, bạn sẽ đọc một số dữ liệu chuỗi thời gian từ tệp xlsx bằng read_excel(), một hàm của gói readxl, và lưu dữ liệu thành một đối tượng ts. Cả tệp xlsx và gói đã được nạp sẵn vào không gian làm việc của bạn.

Hướng dẫn

100 XP
  • Dùng hàm read_excel() để đọc dữ liệu từ "exercise1.xlsx" vào mydata.
  • Gọi head() trên mydata trong R console để xem vài dòng đầu tiên. Hãy quan sát các ngày — có bốn quan sát trong năm 1981, cho thấy dữ liệu theo quý với frequency là bốn dòng mỗi năm. Quan sát đầu tiên hay ngày start là Mar-81, dòng đầu tiên trong bốn dòng của year 1981, cho thấy March tương ứng với period thứ nhất.
  • Tạo một đối tượng ts tên myts bằng ts(). Thiết lập data, start và frequency dựa trên những gì bạn vừa quan sát.