본문 바로가기
  • plotly로 바로쓰는 동적시각화 in R & 파이썬
실전에서 바로 쓰는 시계열 데이터 처리와 분석 in R

패키지 업데이트로 인한 수정 사항

by 아참형인간 2021. 10. 7.

제 책에서 사용하고 있는 패키지 중 하나인 'seastests' 패키지가 21.9.18일자로 0.14.4 버전에서 0.15.4 버전으로 업데이트되었습니다..

 

일반적으로 업데이트가 되어도 하위 버전 코드들은 동작할 수 있도록 호환성을 유지하지만 하필이면 제 책에서 인용하고 있는 'wo()' 함수의 명칭이 'combined_test()'로 변경되어 일부 코드가 작동하지 않는 상황입니다..

 

그리고 함수의 내용에도 일부 수정이 있습니다. 

 

시계열 데이터 중에 연별 시계열 데이터에 대해서 wo() 함수가 작동되었으나 combined_test()는 작동하지 않습니다.

 

연도 시계열 데이터는 원래가 계절성이 없기 때문에 'The number of observations per cycle (usually years) is 1 and thus too small.'이라는 에러를 발생시키게 됩니다. 

 

따라서 보내주신 코드인 summary(combined_test(students.ts[,2]))는 에러(연도 시계열 데이터이므로)가 발생하며 다음 코드인 summary(combined_test(employees.ts[,2]))는 정상적으로 작동(월별 시계열 데이터이므로)합니다..

 

하여 다음과 같이 수정이 필요하니 참고하시길 바랍니다..

 

P.133 4번째 줄

wo()는 qs()의 p value 가 0.01보다 작거나 kw()이 결과가 0.002보다 작다면 계절성이 있다고 판단한다

-> combined_test()는 qs()의 p value 가 0.01보다 작거나 kw()이 결과가 0.002보다 작다면 계절성이 있다고 판단한다

 

P.133 6번째 줄

wo()는 앞선 ur.kpss()나 box.test()와는 달리 명확하게 계절성이 있는지 없는지를 알려 준다

-> combined_test()는 앞선 ur.kpss()나 box.test()와는 달리 명확하게 계절성이 있는지 없는지를 알려 준다

 

P.133 첫번째 코드 블럭의 두번째 코드

summary(wo(students.ts[,2]))

-> summary(combined_test(students.ts[,2]))

 

P.133 첫번째 코드 블럭의 실행결과(연도 시계열 데이터라 계절성이 없어 오류를 발생)

Error in combined_test(students.ts[, 2]) :
  The number of observations per cycle (usually years) is 1 and thus too small.

 

P.133 두번째 코드 블럭의 첫번째 코드 

summary(wo(employees.ts[,2]))

-> summary(combined_test(employees.ts[,2]))

 

P.133 두번째 코드 블럭의 실행결과(기존 결과와 동일)

Test used:  WO
 
Test statistic:  1
P-value:  0 1.199041e-14 2.346908e-06
 
The WO - test identifies seasonality

 

P.133 네번째 코드 블럭의 첫번째 코드 

summary(wo(employees.ts[,3]))

-> summary(combined_test(employees.ts[,3]))

 

P.133 네번째 코드 블럭의 실행결과(기존 결과와 동일)

Test used: WO

 

Test statistic: 0

P-value: 0.1976637 0.1976739 0.006082959

 

The WO - test does not identify seasonality

댓글