抑郁症健康,内容丰富有趣,生活中的好帮手!
抑郁症健康 > 机器学习——时间序列ARIMA模型(四):自相关函数ACF和偏自相关函数PACF用于判断ARIMA

机器学习——时间序列ARIMA模型(四):自相关函数ACF和偏自相关函数PACF用于判断ARIMA

时间:2023-05-18 10:22:40

相关推荐

文章目录

1、自相关函数ACF2、偏自相关函数PACF3、ARIMA(p,d,q)的阶数判断4、代码实现1、引入所需依赖2、数据读取与处理3、一阶差分与绘图4、ACF5、PACF

1、自相关函数ACF

自相关函数反映了同一序列在不同时序的取值之间的相关性。

公式:

ACF(k)=ρk=Cov(yt,yt−k)Var(yt)ACF(k)=\rho_{k}=\frac{Cov(y_{t},y_{t-k})}{Var(y_{t})} ACF(k)=ρk​=Var(yt​)Cov(yt​,yt−k​)​

其中分子用于求协方差矩阵,分母用于计算样本方差。求出的ACF值为[-1,1]。

但对于一个平稳的AR模型,求出其滞后值的自相关系数后,得到的并不是x(t)与x(t-k)之间单纯的相关关系,其中掺杂了其他随机变量的影响

2、偏自相关函数PACF

偏自相关系数PACF是严格这两个变量(现值和滞后值)之间的相关性,剔除了中间随机变量的干扰。

3、ARIMA(p,d,q)的阶数判断

q看ACF,p看PACF,d看差分阶数

4、代码实现

1、引入所需依赖

%matplotlib inlineimport pandas as pdimport datetimeimport matplotlib.pylab as pltimport warningsimport seaborn as snsimport statsmodelsfrom matplotlib.pylab import stylefrom statsmodels.tsa.arima_model import ARIMAfrom statsmodels.graphics.tsaplots import plot_acf, plot_pacfstyle.use('ggplot') plt.rcParams['font.sans-serif'] = ['SimHei']plt.rcParams['axes.unicode_minus'] = False

2、数据读取与处理

还是读取道琼斯数据集,这里就不再说啦,这次以周为单位。

详情请看机器学习——时间序列ARIMA模型(三):AR、MA、ARMA、ARIMA模型定义及公式介绍及股价预测案例代码_天海一直在的博客-CSDN博客

stockFile = 'data2000_.csv'stock = pd.read_csv(stockFile, index_col=0, parse_dates=[0])#将索引index设置为时间,parse_dates对日期格式处理为标准格式。stock.head(10)stock_week = stock['close'].resample('W').mean()stock_train = stock_week['2000':'']

3、一阶差分与绘图

stock_train.plot(figsize=(9,5))plt.legend(bbox_to_anchor=(1.25, 0.5))plt.title("Stock Close")sns.despine()#一阶差分stock_diff = stock_train.diff()stock_diff = stock_diff.dropna()plt.figure()plt.plot(stock_diff)plt.title('一阶差分')plt.show()

4、ACF

acf = plot_acf(stock_diff, lags=20)plt.title("ACF")acf.show()

置信区间内q取1,后面突出的两点判断为离群奇异值不管

5、PACF

pacf = plot_pacf(stock_diff, lags=20)plt.title("PACF")pacf.show()

在p取9时后面衰减趋于0且在置信区间内,所以p取9

后续可以根据BIC贝叶斯信息准则来验证,结果和此判断一致。

机器学习——时间序列ARIMA模型(四):自相关函数ACF和偏自相关函数PACF用于判断ARIMA模型中p q参数取值

如果觉得《机器学习——时间序列ARIMA模型(四):自相关函数ACF和偏自相关函数PACF用于判断ARIMA》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。