ARIMA时间序列建模过程——原理及python实现ARIMA模型的全称叫做自回归查分移动平均模型,全称是(ARIMA,AutoregressiveIntegratedMovingAverageModel),是统计模型(statisticmodel)中最常见的一种用来进行时间序列预测的模型,AR、MA、ARMA模型都可以看作它的特殊形式
ARIMA的优缺点优点:模型十分简单,只需要内生变量而不需要借助其他外生变量
缺点:要求时序数据是稳定的(stationary),或者是通过差分化(differencing)后是稳定的;本质上只能捕捉线性关系,而不能捕捉非线性关系
ARIMA的参数与数学形式ARIMA模型有三个参数:p,d,q
p--代表预测模型中采用的时序数据本身的滞后数(lags),也叫做AR/Auto-Regressive项;d--代表时序数据需要进行几阶差分化,才是稳定的,也叫Integrated项;q--代表预测模型中采用的预测误差的滞后数(lags),也叫做MA/MovingAverage项
差分:假设y表示t时刻的Y的差分
ifd=0,yt=Yt,ifd=1,yt=Yt−Yt−1,ifd=2,yt=(Yt−Yt−1)−(Yt−1−Yt−2)=Yt−2Yt−1+Yt−2ARIMA的预测模型可以表示为:Y的预测值=白噪音+1个或多个时刻的加权+一个或多个时刻的预测误差
假设p,q,d已知,ARIMA用数学形式表示为:ytˆ=μ+ϕ1∗yt−1+
+ϕp∗yt−p+θ1∗et−1+
+θq∗et−q其中,ϕ表示AR的系数,θ表示MA的系数3
Python建模##构建初始序列importnumpyasnpimportmatplotlib
pyplotaspltimportstatsmodels
apiassmfromstatsmodels
graphi