第10章时间序列分析
型; ➢ 若平稳序列的偏相关系数是拖尾的,而自相关系数是截尾的,则序列适合MA
模型; ➢ 若平稳序列的偏相关系数与自相关系数都是拖尾的,则序列适合ARMA模型;
ARIMA模型
acf(difsales,lag.max=30)
Series difsales
pacf(difsales,lag.max=30)
还可以通过函数as.ts()可以将对象转换成时间序列;通过函数is.ts()可以判断对 象是否为时间序列对象。
ARIMA模型
绘制时间序列图 R软件中,可以使用plot.ts()函数来画出时间序列的时序图。plot.ts()用法同
plot。 根据平稳时间序列的均值和方差都为常数的性质,平稳序列的时序图显示
unitrootTest(x, lags = 1, type = c("nc", "c", "ct"), title = NULL, description = NULL) 其中,输入参数x为观测值序列,lags为用于校正误差项的最大滞后项,
type为单位根的回归类型,返回的参数p值,p值小于0.05表示满足单位根检验。
acf(x, lag.max = NULL,type = c(correlation, covariance, partial), plot = TRUE, na.action = na.fail, demean = TRUE, …) pacf(x, lag.max, plot, na.action, …) acf()函数中,参数x为观测值序列,acf()为观测值序列自相关函数,lag.max为与acf对应 的最大延迟,type为计算acf的形式,默认为correlation。当没有输出,即为acf(Series)时,画 观测值序列的自相关系数图。 pacf()函数中的输入参数与输出参数的含义同acf()函数的类似。在acf()和pacf()中设定 plot=FALSE可以得到自相关和偏自相关的真实值。
Series difsales
ACF -0.2 0.0 0.2 0.4
Partial ACF -0.2 0.0 0.2 0.4
0
5
10
15
20
25
30
Lag
一阶差分之后序列的自相关图
0
5
10
15
20
25Leabharlann 30Lag一阶差分后序列的偏自相关图
一阶差分后自相关图中,ACF值在一阶后迅速跌入置信区间,并且数值徘徊在置信区间 ,没有收敛趋势,显示出拖尾性。偏自相关图 中,PACF值在一阶后迅速跌入置信区间, 并且有向零收敛的趋势,显示出截尾性,所以可以考虑用AR模型拟合1阶差分后的序列, 即对原始序列建立ARIMA(1,1,0)模型。
0
5
10
15
20
25
30
Lag
一阶差分之后序列的自相关图
ARIMA模型
(2)时间序列模型识别定阶 使用 R软件中的acf()和pacf()函数来分别给出时间序列的自相关图和偏自相关图。
可根据自相关图和偏自相关图对时间序列模型进行定阶。
根据自相关图和偏自相关图对时间序列模型进行定阶: ➢ 若平稳序列的偏相关系数是截尾的,而自相关系数是拖尾的,则序列适合AR模
第10章 时间序列分析
2020/4/10
常用时间序列模型
ARIMA模型
时间序列对象 在R软件中,使用时间序列建模前需要先将数据存储到一个时间序列对象中。
我们可以使用函数ts()将数值类型的观测对象存储为时间序列对象。 使用格式:
ts(data = NA, start = 1, end = numeric(), frequency = 1,… ) 其中,data是时间序列观测值对象,必须为数值类型的向量、矩阵或数据框; start是用来指定时间序列观测值对象的第一个时间点,比如2000年1月,则设置 start=c(2000,1);end用来指定时间序列的终止时间点;frequency用来指定数据在 一年中的频数。
该序列值始终在一个常数附近随机波动,而且波动的范围有界;如果有明显的 趋势性或者周期性那它通常不是平稳序列。
销量 / 元 3000 4000
0
5
10 15 20 25 30 35
时间
ARIMA模型
时间序列检验分析 (1)自相关性检验
自相关图中的两条虚线标示置信界限是自相关系数的上下界。如果自相关系迅速衰减落 入置信区间内,就可能是白噪声;如果自相关系数超出置信区间,那么表示存在相关关系, 而且从哪一阶落在置信区间内,就表示自相关的阶数是几阶。 使用格式:
ARIMA模型
原始序列时序图
原始序列的自相关图
时序图显示该序列具有明显的单调递增趋势,可以判断为是非平稳序列;自相关图显示自相 关系数长期大于零,说明序列间具有很强的长期相关性,可以判断为非平稳序列;
ARIMA模型
时间序列检验分析 (2)单位根检验
对时间序列的平稳性检验通常使用单位根检验的方法。在R软件中,单位 根检验使用fUnitRoots包中的unitrootTest()函数可以实现 使用格式:
单位根检验统计量对应的p值显著大于0.05,判断该序 列为非平稳序列(非平稳序列一定不是白噪声序列)。
ARIMA模型
ARIMA建模分析 (1)非平稳时间序列差分
对于非平稳时间序列,首先需要对其进行差分直到得到一个平稳时间 序列。在R软件中,可以使用diff()函数对时间序列进行差分运算。
diff()函数的使用格式:diff(x, lag = 1, differences = 1, ...) 其中,输入参数"x"代表观测值序列;"lag"代表差分运算的步数,缺省值代表一 步差分;" differences"代表差分运算的阶数,缺省值代表一阶差分。 对一阶差分后的序列再次做平稳性判断过程同上。
ARIMA模型
销量残差 / 元 -200 -100 0 100 200 300
ACF -0.2 0.0 0.2 0.4
5
10
15
20
25
30
35
时间
一阶差分之后序列的时序图
Series difsales
结果显示,一阶差分之后的序列的时序
图在均值附近比较平稳的波动、自相关 图有很强的短期相关性、单位根检验p 值小于0.05,所以一阶差分之后的序列 是平稳序列。
BIC (Intercept) test-lag1 test-lag2 test-lag3 test-lag4 test-lag5 error-lag1 error-lag2 error-lag3 error-lag4 error-lag5