数据预处理
拿到数据之后,首先打印数据,观察数据的整体结构
补充缺失值
有三种方法:直接去掉该点;用相近的点代替;线性插值补充
原始时间序列分析
平稳性检验
平稳性分为2类,分别是严平稳和宽平稳。
严平稳是一种条件比较苛刻的平稳性定义,它认为只有当序列所有的统计性质都不会随着时间的推移而发生变化时,该序列才能被认为平稳。宽平稳是使用序列的特征统计量来定义的一种平稳性。它认为序列的统计性质主要由它的低阶矩决定,所以只要保证序列低阶矩平稳(二阶),就能保证序列的主要性质近似稳定。
目前使用的一般是宽平稳。
平稳性检验分为图检验和统计检验。图检验是使用时序图和自相关图的方式,通过肉眼识别平稳性。例如观察时序图发现有递增趋势,那该序列就是不平稳的。自相关图长期大于0或者很乱也说明不稳定。统计检验是单位根检验,方法是ADF检验,如下表所示。平稳性序列的特征1:adf值均小于cvalue的各项值;特征2:p值小于0.05。
- 不是所有的平稳序列都有必要预测,如白噪声序列。白噪声序列的特点是均值为0,没有相关性。如均值为0,方差为1的随机数序列,虽然平稳,但属于白噪声序列。此外,把所有趋势性序列拆分出去之后,剩下的残差就是白噪声序列,用于后续的检测。
纯随机性/白噪声检验
可以用BP或者LB检验判断。
序列预测
差分
差分即相距K期的两个序列作差。差分运算具有强大的确定性信息提取能力,许多非平稳序列差分后会显示出平稳序列的性质,这时称这个非平稳序列为差分平稳序列。差分平稳序列可以使用ARMA模型进行拟合。ARIMA模型的实质就是差分运算与ARMA模型的组合。
差分之后进行平稳性和白噪声检验,确定差分之后的序列是平稳非白噪声序列就可以用模型拟合了。
ARMA模型
AR模型:t时刻的时间序列值受它之前的p个时期的值共同影响,本质上也是线性模型;
MA模型:t时刻的时间序列值受它之前的p个时期的随机扰动(残差/白噪声)项共同影响。
ARIMA模型
在ARMA模型基础上增加了差分操作,本质上是一样的。
模型的关键在于确定参数(p,q,d)。p指AR模型的期数,q指MA模型的期数,d指差分几阶后达到稳定非白噪声序列。
拖尾和截尾可以用来判断p和q的取值。拖尾指缓慢下降,到0附近;截尾指骤降到0附近。可以将拖尾截尾判断当做辅助工具。方法如下图所示。
目前比较好的方法是自动确定阶数。当p和q均小于等于3的所有组合的B1C信息量,取其中BIC信息量达到最小的模型阶数。
后处理
在建模完成之后需检验剩下的残差是否是白噪声序列,若是,说明建模没问题。