6.4 X11 분해

분기별 데이터와 월별 데이터를 분해할 때 인기 있는 또 하나의 기법은 미국 인구 조사국(the US Census Bureau)과 캐나다 통계청(Statistics Canada)에서 창안한 X11 기법입니다.

이 기법은 고전적인 분해에 기초하면서, 이전 절에서 다룬 고전적인 분해의 단점을 극복하기 위한 많은 추가적인 단계와 특징을 포함합니다. 특별히 양 끝점을 포함한 모든 관측값에 대해 추세-주기 측정을 할 수 있고, 계절성분이 시간에 따라 느리게 변하도록 합니다. X11은 거래일 변동, 휴일 효과, 알려진 예측치에 의한 효과 등을 다루기 위한 몇 가지 정교한 방법도 포함하고 있습니다. 이 과정은 완전히 자동이고, 시계열에서 나타나는 특이점이나 수준 변화가 주는 영향에 대해 매우 잘 견디는 경향이 있습니다.

Dagum & Bianconcini (2016) 에서 X11 기법을 자세하게 다룹니다. 여기에서는 R에서 자동으로 진행되는 과정과 사용하는 방법만 소개하겠습니다.

R의 seasonal 패키지에 있는 seas() 함수로 X11 기법을 이용할 수 있습니다.

library(seasonal)
elecequip %>% seas(x11="") -> fit
autoplot(fit) +
  ggtitle("전자 장비 지수의 X11 분해")
전자 장비 신규 구매 지수의 X11 분해.

Figure 6.9: 전자 장비 신규 구매 지수의 X11 분해.

이것을 그림 6.1의 STL 분해와 그림 6.8의 고전적인 분해와 비교해보시길 바랍니다. X11 추세-주기는 다른 두 가지 기법보다 데이터에서 2009년 초반에 나타나는 갑작스럽게 떨어지는 패턴을 좀 더 잘 잡아내고, 2009년 말의 특이한 관측값이 이제 나머지 성분에서 더욱 분명하게 보입니다.

seas() 함수에서 주어진 출력으로, seasonal()가 계절성분을 추출할 것이고, trendcycle()가 추세-주기 성분을 추출할 것이고, remainder()가 나머지 성분을 추출할 것이고, seasadj()가 계절적으로 조정된 시계열을 계산할 것입니다.

예를 들어, 그림 6.10은 원본 데이터에 대해 추세-주기 성분과 계절성으로 조정된 데이터를 나타냅니다.

autoplot(elecequip, series="데이터") +
  autolayer(trendcycle(fit), series="추세") +
  autolayer(seasadj(fit), series="계절성으로 조정된 것") +
  xlab("연도") + ylab("신규 주문 지수") +
  ggtitle("전자 장비 제조 (유럽 지역)") +
  scale_colour_manual(values=c("gray","blue","red"),
             breaks=c("데이터","계절성으로 조정된 것","추세"))
전자 장비 주문: 원본 데이터(회색), 추세-주기 성분(빨간색), 계절성으로 조정된 데이터(파란색).

Figure 6.10: 전자 장비 주문: 원본 데이터(회색), 추세-주기 성분(빨간색), 계절성으로 조정된 데이터(파란색).

계절성분의 계절성 그래프와 계절성 부-시계열 그래프는 유용할 수 있습니다. 이러한 그래프는 시간에 따른 계절성분의 변화를 눈으로 볼 수 있도록 도와줍니다. 그림 6.116.12에서의 얻은 계절성분의 계절성 부-시계열 그래프(seasonal sub-series plot)를 나타냅니다. 이 경우에, 시간에 따른 작은 변화만 있습니다.

fit %>% seasonal() %>% ggsubseriesplot() + ylab("계절성")
전자 장비 신규 주문 지수의 X11 분해로부터 얻은 계절성분의 계절성 부-시계열 그래프.

Figure 6.11: 전자 장비 신규 주문 지수의 X11 분해로부터 얻은 계절성분의 계절성 부-시계열 그래프.

참고 문헌

Dagum, E. B., & Bianconcini, S. (2016). Seasonal adjustment methods and real time trend-cycle estimation. Springer. [Amazon]