天天看点

Python 数据分析——数据动态性分析

作者:昌华量化
Python 数据分析——数据动态性分析

动态数据是指观察或记录下来的、一组按时间先后顺序排列起来的数据序列。

1.数据特征

(1)构成

· 时间。

· 反映现象在一定时间条件下的数量特征的指标值。

(2)表示

· x(t):时间t为自变量。

· 整数:离散的、等间距的。

· 非整数:连续的,实际分析时必须进行采样处理。

· 时间单位:秒、分、小时、日、周、月、年。

2.动态数据分类——按照指标值的表现形式

(1)绝对数序列

· 时期序列:可加性。

· 时点序列:不可加性。

(2)相对数/平均数序列

3.时间数据分类——按照时间的表现形式

· 连续。

· 离散。

· 时间序列中,时间必须是等间隔的。

4.动态数据的特点

· 数据取值随时间变化。

· 在每一时刻取什么值,不可能完全准确地用历史值预报。

· 前后时刻(不一定是相邻时刻)的数值或数据点有一定的相关性。

· 整体存在某种趋势或周期性。

5.动态数据的构成与分解

时间序列=趋势+周期+平稳随机成分+白噪声

6.动态数据分析模型分类

(1)研究单变量或少数几个变量的变化

· 随机过程:周期分析和时间序列分析。

· 灰色系统:关联分析,GM模型。

(2)研究多变量的变化

· 系统动力学建模。

7.时间序列模型

· 研究一个或多个被解释变量随时间变化规律的模型。

· 模型主要用于预测分析。

· 目的—精确预测未来的变化。

· 数据要求—序列平稳。

· 研究角度:

 时间域。

 频率域。

· 模型内容:

 周期分析。

 时间序列预测。

时间序列模型的表示:

Python 数据分析——数据动态性分析

εt表示白噪声。

8.动态系统模型

· 研究具有时变特点的多个因素之间的相互作用,以及这些作用与系统整体发展之间的关系的模型。

· 模型主要用于模拟和情景分析。

· 研究重点:各种因素是如何相互作用影响系统总体发展的。

9.模型表示

· 因果反馈逻辑图。

· 未来系统要素变化趋势图。

10.建模步骤

(1)分析数据的动态特征。

(2)进行数据序列分解。

(3)数据预处理。

(4)模型构建模型确认。

11.建模方法

(1)时间序列模型

· 统计学方法:随机过程理论。

· 灰色系统方法。

(2)动态系统模型

· 动态系统仿真方法。

12.时间序列模型

(1)平稳随机过程

如果一个随机过程的均值和方差在时间过程上是常数,并且在任何两个时期之间的协方差值仅依赖于这两个时期间的距离和滞后,而不依赖于计算这个协方差的实际时间,那么这个随机过程称为平稳的随机过程。

· 严平稳:一种条件比较苛刻的平稳性定义。认为只有当序列所有的统计性质都不会随着时间的推移而发生变化时,该序列才能被认为是平稳的。

· 宽平稳:使用序列的特征统计量来定义的一种平稳性。认为序列的统计性质主要由它的低阶矩决定,所以只要保证序列低阶矩平稳(二阶),就能保证序列的主要性质近似稳定。

(2)平稳序列的统计性质

· 常数均值。

· 自协方差函数和自相关函数只依赖于时间的平移长度而与时间的起止点无关。

(3)自相关函数

Python 数据分析——数据动态性分析

其他的动态数据模型有线性模型法、非线性趋势等。

13.时间序列建模

任何时间序列都可以看作是一个平稳的过程。所看到的数据集可以看作是该平稳过程的一个实现。主要方法有自回归AR(p)、移动平均MA(q)与自回归移动平均ARMA(p,q)等。

(1)自回归(AR)模型

时间序列可以表示成它的先前值和一个冲击值的函数:

Python 数据分析——数据动态性分析

(2)滑动平均(MA)模型

序列值是现在和过去的误差或冲击值的线性组合:

Python 数据分析——数据动态性分析

(3)自回归滑动平均(ARMA)模型

序列值是现在和过去的误差或冲击值以及先前的序列值的线性组合:

Python 数据分析——数据动态性分析