import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
'font.family'] = 'Noto Sans KR'
plt.rcParams[
= pd.read_csv('_data/foot.csv') df
자기귀모형
확률 통계
시계열 분석
- 자기회귀과정: 예측값이 이전 값에만 선형적으로 의존한다고 가정
from statsmodels.tsa.stattools import adfuller
= adfuller(df['foot_traffic'])
ADF_result 0], ADF_result[1] ADF_result[
(-1.1758885999240625, 0.6838808917896241)
- 비 정상성 발견. 차분 진행
= np.diff(df['foot_traffic'], n=1)
foot_diff
= adfuller(foot_diff)
ADF_result 0], ADF_result[1] ADF_result[
(-5.268231347422049, 6.369317654781143e-06)
from statsmodels.graphics.tsaplots import plot_acf
=20)
plot_acf(foot_diff, lags plt.show()
from statsmodels.tsa.arima_process import ArmaProcess
= np.array([1, 0, 0])
ma2 = np.array([1, -0.33, -0.50])
ar2 = ArmaProcess(ar2, ma2).generate_sample(nsample=1000) AR2_process
from statsmodels.graphics.tsaplots import plot_pacf
=20)
plot_pacf(AR2_process, lags plt.show()
=20)
plot_pacf(foot_diff, lags plt.show()