4. Time series features

<aside> 💡 [features 관련 주요 함수]

</aside>

Preface

feasts 패키지는 시계열 데이터의 특징과 통계량을 살펴볼 수 있는 함수들을 포함하고 있다. 우리는 이미 시계열의 여러 특징을 살펴봤다. 예컨대, 2.8장에서 살펴본 자기상관 또한 시게열의 특징(numeric summary, 산술적 요약)이라 볼 수 있다. 또 다른 특징(산술적 요약)으로는 Box-Cox 변환에서의 매개변수로 쓰인 guerrero 추정값을 꼽을 수 있다.

우리는 다양한 시계열에서 다양한 특징을 찾아낼 수 있고, 시계열의 특성을 살펴볼 때 이들을 활용할 수 있다. 이 장에서 우리는 시계열 탐색에 유용한 몇 특징을 알아보고, 데이터의 흥미로운 정보를 밝혀내는 데 있어 어떻게 활용될 수 있는지 알아볼 것이다. (호주의 분기별 관광 데이터를 활용할 것이다.)

4.1 Some simple statistics

시계열로부터 산출된 어떤 산술적 요약(ex: 평균, 최솟값, 최댓값 등)도 해당 시계열의 특징이 될 수 있다. 이러한 값은 features(열, 함수) 함수를 통해 계산할 수 있다.

tourism |>
  features(Trips, list(mean = mean)) |>
  arrange(mean)

#> # A tibble: 304 × 4
#>    Region          State              Purpose   mean
#>    <chr>           <chr>              <chr>    <dbl>
#>  1 Kangaroo Island South Australia    Other    0.340
#>  2 MacDonnell      Northern Territory Other    0.449
#>  3 Wilderness West Tasmania           Other    0.478
#>  4 Barkly          Northern Territory Other    0.632
#>  5 Clare Valley    South Australia    Other    0.898
#>  6 Barossa         South Australia    Other    1.02 
#>  7 Kakadu Arnhem   Northern Territory Other    1.04 
#>  8 Lasseter        Northern Territory Other    1.14 
#>  9 Wimmera         Victoria           Other    1.15 
#> 10 MacDonnell      Northern Territory Visiting 1.18 
#> # ℹ 294 more rows

우리는 남호주의 Kangaroo Island으로의 ‘Other’ 목적 방문자가 평균을 내 봤을 때 가장 적다는 것을 알 수 있다.

한 번에 하나의 특징을 계산하는 것보다, 한 번에 여러 특징을 도출하는 것이 편하다. 주로 쓰이는 데이터의 산술적 요약 집합은 최솟값, 1사분위수, 중앙값, 3사분위수, 최댓값 이렇게 5가지 값이다. 이 값들은 데이터를 크기가 같은 4개의 섹션으로 나눠준다. quantile() 함수로 한꺼번에 구할 수 있다.

4.2 ACF features

자기상관은 2.8절에서 논한 바 있다. 시계열의 자기상관은 모두 시계열의 특징(feature)에 해당한다. 자기상관을 가지고 또 다른 특징을 만들 수도 있다. 예컨대 자기상관계수의 첫 10개 값을 각각 제곱해 합한 값은, (시차에 무관하게) 시계열 내의 자기상관이 얼마나 있는지에 대한 유용한 요약값이 될 수 있다.

우리는 기간 사이의 데이터 변화로도 자기상관을 구할 수 있다. 즉, 데이터를 차분하여 새로운 시계열(연속적인 값의 차이로 구성)을 만들고 해당 시계열에서 자기상관을 구하는 것이다. 차분 과정을 두 번 연속 수행하는 것이 도움이 될 때도 있다. 차분한 후 해당 시계열을 다시 차분하는 것이다. 두 번 차분 된 시계열의 자기상관은 유용한 정보를 줄 수 있다.

또 다른 연관된 접근으로는 시계열의 주기적 차분값을 계산하는 것이다. 우리가 월별 데이터를 가지고 있다면 (주기가 1년이라면), 우리는 각 월 간 차이를 구할 수도 있다. (1월 간 차이, 2월 간 차이…) 이러한 접근은 매년(not 월별) 시계열이 어떻게 변하는지 살펴보는 데에 도움이 된다. 이렇게 구한 주기적 차분값의 자기상관 값 역시 도움이 될 수 있다.

9.1절에서 차분 과정을 더 살펴볼 것이다.

feat_acf 함수는 아래 6개 혹은 7개의 자기상관 관련 값들을 계산해준다.