데이터사이언스/데이터사이언티스트4기
시계열 데이터 분석 용어 정리 (정상성, 차분, ACF, PACF 등)
병기
2025. 5. 22. 15:46
1. 시계열(Time Series)
정의: 시간의 흐름에 따라 순서대로 수집된 데이터.
- 시간 순서가 중요하며, 과거의 값이 미래 예측에 영향을 줄 수 있는 구조입니다.
- 예: 일별 기온, 시간별 교통량, 월별 매출 등
2. 정상성(Stationarity)
정의: 시계열 데이터의 평균, 분산, 공분산이 시간에 따라 변하지 않는 성질
조건:
- 평균이 일정할 것
- 분산이 일정할 것
- 공분산이 시차(lag)에만 의존하고 시간 t에는 의존하지 않을 것
예시 그래프:
- 상승 추세가 있는 데이터 (비정상)
- 차분 후 평균이 일정해진 데이터 (정상)
3. 차분(Differencing)
정의: 이전 시점의 값을 빼서 변화량(증감폭)을 구하는 방식. 비정상 시계열을 정상화할 때 사용
용도:
- 추세 제거
- 계절성 제거 (계절 차분: )
예시 그래프:
- 원시 시계열 vs. 1차 차분 시계열 비교
4. 공분산(Covariance)
정의: 두 변수의 변화가 같은 방향으로 움직이는지 수치로 표현한 값
- : 함께 증가
- : 반대로 움직임
시계열에서는 시차 간 공분산이 일정해야 정상성 만족
5. 정상성 검정
ADF 검정 (Augmented Dickey-Fuller)
- 귀무가설: 시계열은 비정상
- p-value < 0.05 → 정상 시계열로 판단
KPSS 검정
- 귀무가설: 시계열은 정상
- p-value < 0.05 → 비정상 시계열로 판단
예시:
- adfuller() 또는 kpss() 결과 출력 및 해석
6. ACF (자기상관 함수)
정의: 시계열 데이터가 과거 값들과 얼마나 연관되어 있는지를 측정
- x축: 시차 (lag)
- y축: 자기상관 계수 (-1 ~ 1)
- MA 모델 차수 결정에 사용
예시 그래프:
- ACF plot에서 천천히 감소 → 비정상성 의심
- 특정 시차에서만 튀는 경우 → 주기성 가능성
7. PACF (편자기상관 함수)
정의: 특정 시차의 직접적인 상관관계만 측정 (중간 값들 영향을 제거)
- AR 모델 차수 결정에 사용
예시 그래프:
- 시차 1~2까지만 튀고 이후는 급감 → AR(2) 모델 가능성
8. AR(p) 모델 vs MA(q) 모델
AR(p): 자기회귀 모델
- 과거 관측값 자체를 기반으로 예측
- 수식:
- PACF에서 시차가 급감하는 시점이 p
MA(q): 이동 평균 모델
- 과거의 오차를 기반으로 예측
- 수식:
- ACF에서 시차가 급감하는 시점이 q
구분AR(p)MA(q)
기반 | 과거의 실제 값 | 과거의 오차 항 |
차수 판단 | PACF | ACF |
9. Rolling (이동 평균)
정의: 일정한 창(window)을 이동시키며 평균, 합계 등을 계산
# 5개 창의 이동 평균
df['smoothed'] = df['value'].rolling(5).mean()
효과: 노이즈 제거, 부드러운 추세선 도출
예시 그래프:
- 원시 시계열과 이동 평균 시계열 비교
10. 시계열 분해 (Time Series Decomposition)
정의: 시계열을 3가지 성분으로 분리해서 분석
- Trend (추세)
- Seasonality (계절성)
- Residual (잔차)
from statsmodels.tsa.seasonal import seasonal_decompose
seasonal_decompose(df['value'], model='additive', period=12).plot()
예시 그래프: 분해된 결과 각각 시각화
11. 정상 vs 비정상 시계열 비교
항목 | 정상 시계열 | 비정상 시계열 |
평균 | 일정함 | 시간에 따라 변함 |
분산 | 일정함 | 시간에 따라 변함 |
공분산 | 시차에만 의존 | 시점 위치에 따라 다름 |
모델링 | 바로 가능 | 차분 등 전처리 필요 |