날짜-가격
의 형태의 데이터가 있다면 날짜가 인덱스 역할을 함미래 예측의 전제
- 과거의 데이터에 일정 패턴이 발견됨
- 해당 패턴이 미래에도 동일하게 반복될 것
⇒ Stationary data에 대해서만 미래 예측이 가능
조건: 다음 세 가지가 일정해야함 (시간에 따라서 변동한다든가 하면 안됨)
상관계수
확률변수의 단위 크기에 영향을 받는 공분산의 특징을 보완하기 위해 도입한 개념
확률변수의 절대적인 크기의 영향을 벗어나도록 단위화 시키는 과정이라고 생각하면 됨.
- 성질
- 1 이하이다.
- x, y가 독립이면 상관계수는 0이다.
- x, y가 선형적 관계라면 상관계수는 양의 선형관계일 경우 1, 음의 선형 관계일 경우 -1이다.
autocovariance & autocorrelation
df = pd.read_csv(dataset_filepath, index_col = 'Date', parse_dates=True)
df.head()
df.index
Temp | |
---|---|
Date | |
1981-01-01 | 20.7 |
1981-01-02 | 17.9 |
1981-01-03 | 18.8 |
1981-01-04 | 14.6 |
1981-01-05 | 15.8 |
# 결측치가 있다면 이를 보간합니다. 보간 기준은 time을 선택합니다.
ts1=ts1.interpolate(method='time')
df.interpolate(method='')
를 사용함증명
1. 귀무가설(Null hypothesis): 주어진 시계열 데이터는 안정적이지 않다.
2. 통계적 가설 검정과정을 통해 귀무가설이 기각된다.
3. 2를 통해 대립가설(alternative hypothesis, 시계열 데이터는 안정적이다.)을 채택한다.
ADF 검정 | |
---|---|
방식 | 단위근(x=1, y=1인 해) 검정 방식 |
귀무가설 | 자료에 단위근이 존재한다. |
대립가설 | 단위근이 존재하지 않는다. 따라서 시계열 자료가 정상성을 만족한다. |
원리 | 검정통계량이 critical value보다 작거나 p-value가 설정한 유의수준 값보다 작으면 정상적인 시계열 데이터 |
statsmodels 라이브러리 안의 seasonal_decompose 메소드를 이용해 시계열 내에 존재하는 trend, seasonality를 직접 분리함.
Original = Trend+Seasonality+Residual
p + q < 2
, p * q = 0
인 값을 사용말로만 듣던 시계열을 처음 접해봤는데 지금까지 거쳐간 ex 노드 중에 제일 재밌었다. 무엇보다 결과가 빨리 나와서 좋았다.. 이해하고 넘어간 줄 알았는데 정작 다른 회사의 주식 값을 예측할 땐 이게 뭐지 싶어서 다시 앞으로 가서 확인하고 하는 과정이 많았다. 이런 걸 보면 내용을 확실히 이해한 것은 분명 아닌 듯 싶다. 그럼에도 함수로 구성하고 예측하는 과정이 재밌어서 더 공부할 수 있다면 이쪽에 관심을 가지고 하지 않을까 생각한다.