时间序列是指将某种现象某一个统计指标在不同时间上的各个数值,按时间先后顺序排列而形成的序列。

A time series is a series of data point indexed(or listed or graphed) in time order. Most commonly, a time series is a sequence taken at successive equally spaced points in time. – wiki

时间序列分析:Time series analysis comprises methods for analyzing time series data in order to extract meaningful statistics and other characteristics of the data.
时间序列预测:Time series forecasting is the use of the model to predict future values based on previously observed values. Methods of time series analysis may also be divided into linear and non-linear, and univariate and multivariate.
在线性回归分析中,对时间序列数据的处理往往不同于横截面数据。从经验出发,选择其中一个变量作为被解析变量,然后直接对其变量进行回归,通常采用普通最小二乘法(OLS:Ordinary least squares)对参数进行估计,估计出来的参数被称为OLS参数估计量,再经过一系列统计检验和计量学检验,最终确立变量间的函数关系,从而得到有意义的结论。而对于时间序列数据,如果所有变量都是平稳的,则可以直接进行回归,但是如果序列是不平稳的,那么需要通过协整验证,验证通过之后,才能进行回归,否则会出现“伪回归”线性,即OLS参数估计量不再服从某种既定的分布(例如正态分布),导致基于该分布的统计验证不再可靠,从而影响最终的结论。

那么下面先了解一下经典假设下OLS的有限样本性质
第一个假定是指,时间序列服从一个线性于参数的模型。

假定TS.1(线性于参数)

假定TS.2(无完全共线性)
在样本中(并因而在潜在的时间序列过程中),没有任何自变量是恒定不变的,或者是其他自变量的一个完全线性组合。
也就是说自变量之间不能互相线性表示,例如:z=x+y, y=2x+1,这里面自变量 y 是另一个自变量 x 的一个线性组合,那么这里就不满足这个假定。

假定TS.3(零条件均值)

假定TS.4(同方差性)

假定TS.5(无序列相关)

假定TS.6(正态性)

由以上假定可以得到下面定理:

定理1.(OLS的无偏性):



定理2.(OLS的样本方差)

高斯–马尔可夫定理:是指在给定经典线性回归的假定下,最小二乘估计量是具有最小方差的线性无偏估计量的这一定理。

“In statistics, the Gauss-Markov theorem states that the ordinary least squares(OLS) estimator has the lowest sampling variance with the class of linear unbiased estimators, if the errors in the linear regression model are uncorrelated, have equal variance and expectation value of zero.” --wiki

SST: sum of squares total,总平方和是对y在样本中所有变动的度量,即它度量了y在样本中的分散程度。
SSR: sum of squares regression,残差平方和,度量了残差的样本变异。
SSE: sum of squares error,解析平方和,度量了y的预测值在样本中的变异。SSE越接近于0,说明模型选择和拟合更好。



df(degree of freedom):自由度
n 是观测次数(时期数),number of observations;按一个时刻一行数据的话,就表示时间序列表中的行数。
k 表示有k个解析变量(variables),即时间序列表中的列数。

定理4. (高斯-马尔科夫定理)
在假定TS.1到TS.5下,以为条件,OLS估计量是最优线性无偏估计量。
最优线性无偏估计量:
线性:这个估计量是随机变量。
无偏性:这个估计量的均值或者期望值等于真实值。
最优估计量:具有有效估计量,且这个估计量在所有这样的线性无偏估计量一类中有最小方差。

定理5. (正态抽样分布)
在时间序列的CLM(Classical Linear Model)假定TS.1至TS.6下,以为条件,OLS估计量遵循正态分布。而且,在原假设下,每个 t 统计量服从 t 分布,F 统计量服从 F 分布,通常构造的置信区间也是有效的。模型的 t 检验和 F 检验是有效的。
CLM假定:从假定TS.1至TS.6这六个假定被称为经典线性模型(CLM)假定。
定理5意味着,当假定TS.1到TS.6成立时,我们曾经学过的横截面回归估计与推算,其全部结论都可以直接应用到时间序列回归中。

所以在做时间系列分析的模型之前我们需要将数据处理到满足假定TS.1-TS.6后,才能够使得我们得到的结果的模型的 t 检验和 F 检验是有效的,才可以使用横截面回归估计与推算的结论。
上诉这6点是经典的回归模型,这个模型里面暗含这一个假设,数据是平稳(stationary)的,但是很多情况下我们的数据是非平稳(non-stationary)的,即有趋势的,或存在季节性的,如下右图。

平稳过程:所谓的平稳过程,就是概率分布在如下意义上跨时期稳定的时间序列过程:如果我们从这个序列中任取一个随机变量集,并把这个序列向前移动h个时期,那么其联合概率分布仍然保持不变。平稳性的规范定义如下:

不平稳的随机过程称为非平稳过程(nonstationary process)。

如果时间序列它是有趋势的,那么也就是非平稳的,从而采用OLS估计的 t 检验和 F 检验是无效的。我们把这种情况叫做伪回归 (spurious regression),也就是它存在某些线性关系的统计学表象,来迷惑你,让你觉得它是线性的。比如说y=2exp(x) + 1, x通过躲在exp里面,戴上了exp的帽子,让你以为这是一个y=2x+1的函数。因此,对于非稳定变量,不能使用经典回归模型,否则会出现虚假回归(伪回归)等诸多问题。
注意,上面这段文字中所说的线性的也是平稳的,是因为非稳定的时间序列,如果

正确地提示了X与Y间地长期稳定的“均衡关系”,则意味着Y对其均衡点的偏离从本质上说时“临时性”的。那么在随机扰动项ut是平稳序列时,他们的线性组合可能称为平稳的。

In statistics, a spurious relationship or spurious correlation is a mathematical relationship in which two or more events or variables are associated but not causally related, due to either coincidence or the presence of a certain third, unseen factor (referred to as a “common response variable”, “confounding factor”, or “lurking variable”). --wiki

Spurious regression is a regression that provides misleading statistical evidence of a linear relationship between independent non-stationary variables. --wiki

那么为了避免出现伪回归,我们会对非平稳状态的数据处理成平稳状态。大致的处理方法如下:
对于存在趋势的问题,我们可以加入趋势变量,比如刚刚提及的

或者你可以有各种其他的方式,加exp,多元多次等等不同的function。转换成如下的形式

使得 ut 表示的非均衡误差是一平稳时间序列。
另外一种情况是出现季节性,这时我们需要采用差分的方法。随便举个例子,比如说下图为某城市的风速随着时间变化的图(图中风速为月平均),它呈现出明显的周期性,周期为年,在冬季风比较少,风速低,在夏季多台风,月均风速高。

把非平稳的数据处理成为平稳的之后,为了确定处理之后的数据是否真的平稳,需要做一些平稳性检验。
下图为平稳性检验ADF(Augment Dickey-Fuller)的结果(下一篇会分享代码):

1.从图像上判断:一个平稳的时间序列在图形上往往表现出一种围绕其均值不断波动的过程。而非平稳序列则往往表现出在不同的时间段具有不同的均值。由上图可以看出其移动平均(moving average)围绕零波动,rolling mean大致都在零附近。
2.ADF的结果上看,这里 P 值几乎为零,小于给定的显著水平(confidence levels)0.05,所以我们这里可以拒绝这个 null hypothesis,这个原假设是数据是非平稳的,那么我们的结果告诉我们它拒绝承认这个数据是非平稳的,那么也就是说这个数据是平稳的。

Check stationarity using the following methods:
1.Plotting rolling statistics: we can plot the moving average or moving variance and see if it varies with time.
2.Dickey-Fuller test: this is one of the statistical tests for checking stationarity. Here the null hypothesis is that the TS is non-stationary. The test results comprise of a Test Statistic and some Critical values for difference confidence levels.

将数据从非平稳状态转变为平稳状态之后,并且通过Dickey-Fuller Test 发现结果很好,那么下面就可以使用我们处理过的数据通过测试 ACF 和PACF来确定模型参数,然后再用确定好相关参数的时间序列模型进行模型的建立和计算。

下期讲如何使用代码实现时间序列模型的建立和使用该模型来进行预测,敬请关注。

时间序列分析预测未来 Ⅰ相关推荐

  1. 机器学习-预测之时间序列分析预测法原理及实战

    时间序列分析预测法 简介 在之前,写了不少关于分类的算法,其中有传统机器学习算法如KNN.SVM,也有深度学习领域的算法如多层感知机,但是可以发现这里的算法核心思路都没有变化,利用一部分已有标签的数据 ...

  2. Python通过ARIMA模型进行时间序列分析预测

    ARIMA模型预测 时间序列分析预测就是在已有的和时间有关的数据序列的基础上构建其数据模型并预测其未来的数据,例如航空公司的一年内每日乘客数量.某个地区的人流量,这些数据往往具有周期性的规律.如下图所 ...

  3. 基于LSTM时间序列分析预测拉尼娜年天气

    基于LSTM时间序列分析预测拉尼娜年天气 天气预测 Import all necessary libraries Replace all column names by overwritting on ...

  4. python时间序列指数平滑预测_时间序列分析预测实战之指数平滑法

    一.什么是时间序列分析? 在工作中,常常要对数据进行预测,确定业务未来的发展趋势,进而配置相关的营销策略.制定业务目标,由此引申出了一个重要的用数据预测未来的方法--时间序列分析,今天和大家分享就是实 ...

  5. 时间序列分析预测实战之指数平滑法

    一.什么是时间序列分析? 在工作中,常常要对数据进行预测,确定业务未来的发展趋势,进而配置相关的营销策略.制定业务目标,由此引申出了一个重要的用数据预测未来的方法--时间序列分析,今天和大家分享就是实 ...

  6. 基于R语言的时间序列分析预测

    数据来源: R语言自带 Nile 数据集(尼罗河流量) 分析工具:R-3.5.0 & Rstudio-1.1.453 #清理环境,加载包 rm(list=ls()) library(forec ...

  7. 数学建模学习(63):2022美赛单变量深度学习LSTM 时间序列分析预测

    换汤不换药,有手就会 基础肥皂案例 数据集如下: 你的数据只要能跟它合上就行,年份和数据. 你只需要修改的地方: 套上去就完事,完整代码: # coding=gbk """ ...

  8. 时间序列分析-预测Apple股票价格

    时间序列 数据描述 探索Apple公司股价数据 导入库 import pandas as pd import numpy as npimport matplotlib.pyplot as plt im ...

  9. 时间序列分析-----1---简介

    一.预测 在生活和工作中经常需要作出预测. 比如,预测一只股票价格的走势,预测下一年度的销售额,等等. 预测是人们根据事物的发展规律.历史和现状.分析影响其变化的因素,对其发展的前景和趋势进行的一种预 ...

最新文章

  1. 优化你的DiscuzNT3.0,让它跑起来(4)asp.net 缓存和死锁
  2. python手动安装包_python pip如何手动安装二进制包
  3. linux 查看hdfs文件,Hadoop之HDFS文件操作
  4. 天池实验室-Task03-Python入门(下)
  5. 26.如何使用python操作我们自己创建的docker image呢?
  6. Unity3D基础5:摄像机与Game视图
  7. SQL数据库学习之路(八)
  8. SQL语句- 条件查询
  9. Elasticsearch自定义插件
  10. (XWZ)的python学习笔记Ⅰ
  11. 如何控制积分成本?常见的积分成本的核算方法
  12. 通过 磁带机 备份 恢复数据 --201308
  13. 姬魔恋战纪服务器维护,《姬魔恋战纪》11月7日更新公告
  14. k8s-搭建虚拟机centos7环境,虚拟机固定IP地址
  15. CTFshow sql注入 上篇(web221-253)
  16. Java篇 - 代理模式和动态代理实现原理
  17. Blender着色器:使用手绘遮罩进行材质叠加
  18. 基于html5的城市公交查询系统,基于WEB的智能公交查询系统的研究与设计
  19. 电磁场与电磁波实验(MATLAB版)
  20. OpenGIS 的WKB和WKT

热门文章

  1. 傻白入门芯片设计,盘点计算机体系结构顶会
  2. Arduino - 驱动HC-SR501 人体红外感应模块
  3. [转帖]探秘华为(二):华为和H3C(华三)的分道扬镳
  4. 展讯7731C_M Android6.0 充电指示灯实现(一)------关机充电实现
  5. buu firmware
  6. UE4.26水系统和浮力系统
  7. NISP-SO安全运维工程师需要掌握的核心能力
  8. 天梯L1-015 跟奥巴马一起画方块 (15 分)(Java)
  9. oppo A37全网通刷机包原厂售后线刷包自带工具
  10. CReLU与PReLU的大体简介