BookmarkSubscribeRSS Feed

[SAS Programming]TimeSeries09

Started ‎10-01-2020 by
Modified ‎10-01-2020 by
Views 392

Intervention analysis : 개입분석

 

시계열 자료는 단기간이 아니라 장기간에 관측된 자료로 이루어집니다.  

장기간 관측 중 예상할 수 없는 사건(ex: 정책의 변화, 전쟁, 파업, 코로나 등)이 발생하면 시계열 자료는 기존의 패턴이  다른 패턴을 갖는 자료로 변형될 수 있습니다.

그래서, 시계열 자료는 사건이 언제 발생했는지 아는 경우 이를 어떠한 상태로 자료에 영행을 미치는지를 모형화하고 이 효과가 유의한지 추정하는 유의성 판단을 하게 됩니다.

이러한 분석을 Intervention analysis라고 합니다.

 

정책의 변화, 파업, 석유 파동, 상품광고와 같이 시계열 자료에 영향을 미칠 가능성이 있는 사건들을 개입(intervention)이라고 합니다.

 

개입변수들은 일반적으로 어떤 사건의 지속기간에 따라 pulse function과 step function으로 나뉘게 됩니다.

1.pulse function: 어떤 사건이 t시점에 발생하여 그 효과가 t시점에만 영향을 미치는 경우입니다.

2. step function:  어떤 사건이 t시점에 발생하여 그 효과가 이후에도 지속되는 것을 말합니다.

 

개입분석 sas 명령문

proc arimia;
identify var = 반응변수 crosser = 개입변수;
estimate p=1 q=1 input(b$w-lags)/(delta-lags);
forecast options;
run;

[1950년대 오존자료분석]

스크린샷 2020-10-01 오후 10.57.37.png

개입이 있기 전 1955~1959년까지의 시계열 자료의 모형

스크린샷 2020-10-01 오후 11.04.26.png
data air;
    infile '/ozone.txt';
    input ozone @@;
    label ozone  = 'Ozone Concentration'
         x1     = 'Intervention for post 1960 period'
         summer = 'Summer Months Intervention'
         winter = 'Winter Months Intervention';
    date = intnx( 'month', '31dec1954'd, _n_ );
    format date monyy.;
    month = month( date );
    year = year( date );
/*plot*/
proc sgplot data=air;
series x=date y=ozone; run;
/*개입자료를 이용하기 전 모형을 적합한 코드*/
proc arima data=air; identify var=ozone nlag=24; where year < 1960; run; identify var=ozone(12) nlag=24; run; estimate q=(1)(12) noint method=ml; forecast lead=12 id=date interval=month out=res;
run;

대기오염을 줄이기 위해 1960년대 대기오염의 원인인 활성 탄화수소의 양을 제한하는 법이 생겼습니다.

그 결과, 1966년부터 판매되는 모든 자동차는 오존발생량을 줄일 수 있는 엔진을 장착해야 하는 법안이 통과되었습니다.

 

*개입변수를 정의

1960년대 1월 이후 영향을 미친다고 계단함수 형태로 정의하였습니다.

스크린샷 2020-10-01 오후 11.06.16.png

[개입효과 코드]

 x1 = year >= 1960;
     summer = ( 5 < month < 11 ) * ( year > 1965 );
     winter = ( year > 1965 ) - summer;
  run; 

개입효과가 여름과 겨울에 발생되는 영향이 다르다고 생각되어 두 가지의 계단함수로 정의

 

스크린샷 2020-10-01 오후 11.13.29.png

잔차를 이용한 모형진단입니다.

proc arima;
    identify var=residual nlag=24; 
run;

전체 자료를 이용한 개입모형 적합입니다. 

 proc arima data=air;

 

위 코드를 사용하여 결과를 보면 Autocorrelation check for white noise, Trend and correlation analysis for Ozone, Maximum likelihood Estimation, Residual Correlation 등을 확인 할 수 있습니다.

 

그 결과 [1960년에 발행된 법안, 여름에 오존 발생 영향, 겨울에 오존 발생 영향 ] 이렇게 3개의 개입효과 중 [1960년에 발행된 법안, 여름에 오전 발생 영향] 2개의 개입효과가 오존 발생량을 줄이는 방향에 작용하는 것을 확인 할 수 있습니다.

 

 

자료는 첨부파일에 있습니다.

Version history
Last update:
‎10-01-2020 10:20 AM
Updated by:
Contributors

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

Register now!

Article Labels
Article Tags