728x90
목차

1. FORECAST.ETS.CONFINT 함수

2. 함수 사용 예시

 

현실에서 사용하는 데이터들은 불연속적으로 보이고 패턴이 없어 보입니다.

이런 데이터를 분석하기 위해 몇가지 방법을 사용하는데,

 

  • 이동평균법 : 과거 데이터의 평균을 이용해서 데이터를 분석하기 쉽게 만들기
  • 지수평활법 : 수준(Level), 추세(Trend), 계절성(Seasonality)로 미래정보를 예상
  • ETS 모델 : 지수평활법에 Error를 추가하여 불확실성을 최소화

 

같은 방법이 있습니다.

 

엑셀에서는 FORECAST.ETS 함수로 이 ETS 예측 솔루션을 제공합니다.

그래도 미래예측이 다 그렇지만, 많은 불확실성을 가지고 있습니다.

불확실성을 계산하는 파생 함수인 CONFINT 함수를 알아보겠습니다.

 

1. FORECAST.ETS.CONFINT 함수

 

FORECAST.ETS.CONFINT(target_date, values, timeline, [confidence_level], [seasonality], [data_completion], [aggregation]) :ETS 함수로 계산한 날짜의 예측한 값에 대한 신뢰구간을 반환합니다. 예측된 결과 95%에 반경에 속할 것이라는 것을 계산할 수 있습니다. 반대로 말하면 이 반경이 좁을 수록 ETS로 예상한 값이 정확도가 높다고 할 수 있습니다.

 

  • target_date : 예측하려는 시점의 숫자입니다. 날짜 혹은 시간, 숫자일 수 있습니다.
    원본데이터의 시간인 timeline에서 몇 단계 멀어져 있는지 계산해서 수행합니다.
    이 시간이 timeline 안쪽인 경우에는 #NUM!의 에러를 출력합니다.
  • values : 측정한 과거의 값들입니다. 범위로 입력해야하고 정확하고 많은 데이터가 필요합니다.
  • timeline : 측정한 값들의 시간 데이터입니다. 일정한 간격의 값으로 구성되어야 하지만 꼭 정렬될 필요는 없습니다.
    함수가 자동으로 시간순으로 정렬하며 줍니다.
    여기에 계산이 불가능한 텍스트등이 포함되면 #NUM을 출력됩니다. values와 같은 개수여야 합니다.
  • [confidence_level] : 구간의 신뢰도 수준을 나타내는 값으로 0 ~ 1 사이의 숫자입니다. 입력하지 않는 기본값은 0.95입니다.
  • [seasonality] : 계절성을 입력하는 항목으로 선택 요소입니다.
    1은 기본값으로 엑셀 함수가 자동으로 계절성을 계산하게 합니다.
    0은 계절성이 없는 모델을 사용하여 계산하는 선형모델을 사용합니다.
    양의 정수를 입력하면 사용자가 입력한 seasonality를 사용해서 계산합니다.
    그 외의 모든 값에 #NUM 오류가 반환됩니다. 지원되는 최대 seasonality는 8,760(1년 동안의 시간)입니다.
    해당 숫자보다 seasonality가 높으면 #NUM! 오류가 반환됩니다.
  • [data_completion] : 계측된 데이터에 빈값을 어떻게 할지 결정하는 선택요소입니다. 이 함수에서는 최대 30%의 누락지점을 매꾸는 알고리즘이 지원됩니다.
    1 : 기본값으로 가까운 지점의 평균을 사용해서 누락된 DATA를 계산합니다.
    0 : 누락된 지점을 0으로 간주하는 알고리즘입니다.
  • [aggregation] : timelie 요소간에 일정한 단계가 필요한데 중복되는 타임 스탬프가 있을 수 있습니다. aggregation은 이 값들을 어떻게 처리할지 결정합니다.
    1 : 기본값으로 그 값들을 AVERAGE를 계산합니다.
    2 : SUM으로 계산합니다.
    3 : Count로 계산합니다.
    4 : CountA로 계산합니다.
    5 : 최소값(Min)으로 계산합니다.
    6 : 최대값(Max)으로 계산합니다.
    7 : 중위값(Median)으로 계산합니다.

 

 

2. 함수 사용 예시

 

함수는 범위를 반환하기 때문에 ETS로 구한값을 더하거나 빼면 됩니다.

EST ± CONFINT를 적용하면 해당 신뢰구간을 구할 수 있습니다.

과거 실측기온을 대상으로  ETS를 이용해서 내년 기온을 예상해 봤습니다.

 

기온을 가지고 ETS

 

일단 보이지는 않지만 1960년부터 지금까지 서울의 월평균 기온을 구한것입니다.

예상값 선에서 CONFINT로 구한 값이 위아래로 범위를 만들고 있습니다.

95% 신뢰구간임에도 이 범위는 ± 3 ℃ 가까운 굉장히 큰 것으로 기후 예상이 어렵다는 것을 알 수 있습니다.

 

기온값과 예상값

 

내년에 진짜 이대로 가는지 보는 것도 좋을 것 같습니다.

ETS함수로 먼미래까지도 계산할 수 있습니다.

예상하는 미래를 좀더 멀리해서 2030년까지 보겠습니다.

시간에 따른 오차가 점점 커지는 것을 볼 수 있습니다.

먼 미래가 예상하기 힘든 점이 반영되는 것입니다.

 

좀더 먼 예상

 

그리고 아주 약간이지만 중심치가 +로 가는 것이 있습니다.

그건 아무래도 지구 온도가 올라가는 것이 반영된 것 같습니다.

ETS 계산법은 기온을 예상하기 위한 수많은 데이터가 없이 통계적으로도 어느정도 예상할 수 있는 장점이 있습니다.

 

그냥 봐서는 이해가 어려울 수 있으니 예시 파일을 올립니다.

여기에는 Microsoft사의 Learn 홈페이지에 가져온 내용도 포함됩니다.

 

ETS 예시.xlsx
0.08MB

 


 

< 지수평활법과 ETS 관련 포스팅 >

 

01. 시계열 분석에서 미래를 예측하는 이동평균법(SMA), 지수평활법(ES)으로 미래값을 예상하고 풀어보기

02. 지수평활법으로 데이터를 분석할 때 계절성과 주기를 파악하는 방법(Exponential Smoothing의 Seasonality)

03. 시계열 예측에서 지수평활법의 기본 모델(Additive)과와 확장 형태인 감쇠 (Damped) 모델들의 정의

04. 시계열 예측에서 계절성에 따른 추세가 변하는 승법적 모델과(Multiplicative Model), 감쇠하는 승법적 모델(Damped Multiplicative Model)

05. 상황에 맞게 지수평활법과 ETS 모델(Exponential Triple Smoothing)을 사용해서 시계열 예측을 수행하기

06. 지수평활법에서는 사용하는 계수(α, β, γ)를 최소제곱법으로 구하는 방법(엑셀 VBA 구하기)

07. 엑셀(EXCEL)로 지수평활법의 ETS 모델을 사용하는 FORECAST.ETS 함수와 파생함수인 SEASONALITY / STAT 함수

08. 엑셀(EXCEL)의 FORECAST.ETS 함수의 오차를 계산하는 CONFINT 함수(지수평활법을 사용하는 미래 예측 함수) - 현재글

 

 

반응형

+ Recent posts