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

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.

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

Dự báo bằng R

Xem khóa học

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

  • 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 startMar-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, startfrequency dựa trên những gì bạn vừa quan sát.

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.

# Read the data from Excel into R
___ <- ___("exercise1.xlsx")

# Look at the first few lines of mydata
___

# Create a ts object called myts
myts <- ts(___[___], start = c(___, ___), frequency = ___)
Chỉnh sửa và Chạy Mã