前言
本章不会对时间序列所有的内容进行一个全方位的介绍,只会简单的整理部分时间序列的基础知识点。
时间序列的成分
时间序列:按时间顺序记录的一组数据,称为时间序列
而一条时间序列通常可以分解为下面四个部分:趋势、季节波动、循环波动、不规则波动,又可以将上述的三个部分称作为:趋势性、季节性、周期性和随机波动性。
组合这四种成分的方式主要有两种:乘法模型和加法模型。
乘法模型:
Y
t
=
T
t
×
S
t
×
C
t
×
I
t
Y_t=T_t×S_t×C_t×I_t
Yt=Tt×St×Ct×It
加法模型:
Y
t
=
T
t
+
S
t
+
C
t
+
I
t
Y_t=T_t+S_t+C_t+I_t
Yt=Tt+St+Ct+It
时间序列的增长率
要想描述一条时间序列的趋势情况,增长率绝对是一个很好的指标,这里主要介绍增长率和平均增长率。
增长率非常容易理解,即两天数据的增长率,在时间序列中有环比增长率和定基增长率,下面是两种增长率的定义
环比增长率:
G
i
=
Y
i
−
Y
i
−
1
Y
i
−
1
×
100
%
,
i
=
1
,
2
⋯
,
n
G_i=\frac{Y_i-Y_{i-1}}{Y_{i-1}}×100\%,i=1,2\cdots,n
Gi=Yi−1Yi−Yi−1×100%,i=1,2⋯,n
定基增长率:
G
i
=
Y
i
−
Y
0
Y
0
×
100
%
,
i
=
1
,
2
⋯
,
n
G_i=\frac{Y_i-Y_0}{Y_0}×100\%,i=1,2\cdots,n
Gi=Y0Yi−Y0×100%,i=1,2⋯,n
其中
Y
0
Y_0
Y0表示用于对比的固定时期的预测值。
平均增长率指的是各逐期环比值得几何平均数减1后得结果,下面是定义:
G
‾
=
(
Y
1
Y
0
×
Y
2
Y
1
×
⋯
×
Y
n
Y
n
−
1
−
1
)
×
100
\overline G=(\sqrt {\frac{Y_1}{Y_0}×\frac{Y_2}{Y_1}×\cdots×\frac{Y_n}{Y_{n-1}}}-1)×100
G=(Y0Y1×Y1Y2×⋯×Yn−1Yn−1)×100
其中,
G
‾
\overline G
G表示平均增长率,
n
n
n为环比值的个数。
增长率的注意事项
- 增长率不能使用0值或者负数计算。
- 不能单独使用增长率来比较两种情况的增量,要注意增长率与绝对水平的结合
对于第二点,其实很好理解,假设两个企业A和B,不能只看A的营销额增长率比B的大,就认为A企业比B企业要强,这是因为没有考虑到两者的营销额数量,比如说B企业的营销额是按亿算的,而A企业是按千万算的,这样就会存在误判。
时间序列的预测方法
时间序列的预测方法有很多很多,在这里不能一一介绍,最简单的几种就是移动平均、简单指数平滑、回归等等。稍微复杂一点的就有ARIMA模型,现在还可以使用机器学习的方法对时间序列进行预测,例如Prophet,LSTM等等。
本文只介绍几种简单的预测方法。
平滑法预测
如果时间序列不含趋势、季节和循环变动成分,其波动主要是随机成分所致,序列的平均值不随时间的推移而变化,其预测方法主要有移动平均、简单指数平滑法,这些方法是通过对时间序列进行平滑以消除其随机波动,因而也称平滑法。
移动平均法
移动平均法是将最近的
k
k
k期数据加以平均,作为下一期的预测值。设移动间隔为
k
k
k,则
t
t
t期的移动平均值为:
Y
‾
t
=
Y
t
−
k
+
1
+
Y
t
−
k
+
2
+
⋯
+
Y
t
−
1
+
Y
t
k
\overline Y_t=\frac{Y_{t-k+1}+Y_{t-k+2}+\cdots+Y_{t-1}+Y_t}{k}
Yt=kYt−k+1+Yt−k+2+⋯+Yt−1+Yt
这种方法可以描述时间序列的变化形态或者趋势,移动平均法只使用最近的
k
k
k期数据,在每次的计算移动平均值时,移动的间隔都为
k
k
k,该方法是比较适合较为平稳的时间序列。
简单指数平滑法
简单指数平滑法预测是一种加权的方法,即如果我们想知道今天的数据大小,可以采用昨天的数据加上昨天的预测值数据进行加权。
F
t
+
1
=
α
Y
t
+
(
1
−
α
)
S
t
F_{t+1}=\alpha Y_t+(1-\alpha)S_t
Ft+1=αYt+(1−α)St
式中,
α
\alpha
α为平滑系数,取值在0到1之间,在预测时,
α
\alpha
α的取值非常关键,当时间序列有较大波动时,选择较小的
α
\alpha
α,如果注重使用近期的值进行预测,选择较大的
α
\alpha
α。
上面这两种方法适合短期预测,但是存在很多缺点,比如不能考虑趋势和季节成分。