1. सीखें
  2. /
  3. पाठ्यक्रम
  4. /
  5. R로 배우는 시계열 예측

Connected

अभ्यास

R에서 시계열 객체 만들기

시계열은 숫자 벡터나 행렬에, 그 숫자가 언제 기록되었는지에 대한 시간 정보가 함께 있는 형태라고 볼 수 있습니다. 이 정보는 R에서 ts 객체에 저장됩니다. 대부분의 연습 문제에서는 기존 패키지에 포함된 시계열을 사용하지만, 직접 가진 데이터를 사용하려면 R에서 ts 객체를 만드는 방법을 알아야 합니다.

아래의 예시 usnim_2002는 2002년 미국 은행의 순이자마진(net interest margins)을 담고 있습니다(출처: 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)

ts() 함수는 세 가지 인수를 받습니다.

  • data는 usnim_2002에서 날짜 열을 제외한 모든 값으로 설정합니다. 시간 정보는 ts 객체에 별도로 저장되므로 날짜 열은 필요하지 않습니다.
  • start는 첫 관측 시점을 나타내기 위해 c(year, period) 형식으로 설정합니다. 여기서 1월은 period 1에 해당합니다. 같은 방식으로 4월은 2, 7월은 3, 10월은 4가 됩니다. 즉, period는 연도의 분기(quarter)를 의미합니다.
  • frequency는 데이터가 분기별이므로 4로 설정합니다.

이 연습에서는 readxl 패키지의 read_excel()을 사용해 xlsx 파일에서 시계열 데이터를 읽고, 이를 ts 객체로 저장해 보겠습니다. xlsx 파일과 패키지는 워크스페이스에 이미 로드되어 있습니다.

निर्देश

100 XP
  • read_excel() 함수를 사용해 "exercise1.xlsx"의 데이터를 mydata에 읽어 오세요.
  • R 콘솔에서 mydata에 head()를 적용해 데이터의 앞부분을 확인하세요. 날짜를 살펴보면 1981년에 네 개의 관측치가 있어, 연도별 네 행으로 이루어진 분기 데이터임을 알 수 있습니다. 첫 관측치, 즉 start 날짜는 Mar-81이며, 1981년의 네 행 중 첫 번째이므로 3월이 첫 period에 해당합니다.
  • 관찰한 내용을 바탕으로 ts()를 사용해 myts라는 ts 객체를 만드세요. data, start, frequency를 알맞게 설정하세요.