数据分析思维拓展之时间序列分析思路

374 阅读4分钟

对比分析与分类分析可参考:数据分析思维拓展之对比分析与分类分析 - 掘金 (juejin.cn)

时间序列数据处理可参考:数据分析之python进阶1.0(时间序列数据处理) - 掘金 (juejin.cn)

时间序列分析概述

定义

  1. 时间序列分析(Time series analysis)是一 种动态数据处理的统计方法.该方法基于随机过程理论和数理统计学方法,研究随机数据序列所遵从的统计规律,用于解决实际问题.
  2. 时间序列又称动态数列或时间数列,就是把各个不同时间的统计指标数值,按时间先后顺序排列起来所形成的统计数列.

用途

  1. 系统描述:根据对系统进行观测得到的时间序列数据,用折线图等方式对系统进行客观的描述.
  2. 系统分析:当观测值取自两个以上变量时,可用一个时间序列中的变化去说明另一个时间序列中的变化.
  3. 预测未来:构建模型拟合时间序列,预测该时间序列未来值.
  4. 决策和控制:根据时间序列模型预测到过程要偏离目标时便可进行必要的控制.

分类

时间序列分为平稳序列、非平稳序列(有趋势序列、复合型序列)

时间序列的构成要素

时间序列的构成要素

时间序列的构成要素分为四种:

  1. 长期趋势(T):数据中对时间的变化相对稳定,往往是长期稳定的,上涨或下跌。是可预测的部分.

很多具有时间序列的数据都具有长期趋势

  1. 季节变动(S):多用在长期的宏观经济类指标中,颗粒度是季度,呈现季节性变化,一般引申为周期性波动,如指标在一周内的周末和工作日的差别,一个月内的月初和月末的差别,可以对未来的某个位置周期性因素进行估计,也是可预测部分。
  2. 周期性波动(C):与季节变动比较相似,有周期因素的存在,是可预测的.
  3. 随机性或不规则波动(|):不可预测.

时间序列要素的分解

时间序列要素的分解取决于:

  1. 数据序列本身隐藏着规律,不可预测的是其中的一小部分.

时间序列数据多数都会自带一定的趋势,有的序列还会伴随着周期性规律,我们可以利用这些特性对大多数数据进行一个预测

  1. 分解的方法要合适,尤其是周期的判断要准确.

时间序列分析思路

我们了解了时间序列的核心要素后,我们对核心要素进行简单的转换,将其变为可量化可统计的四个部分

image.png

强相关:时间越接近,两者之间相关性越强

例如,今天的天气和昨天的天气相对比较接近,但是今天的天气与前两个月的天气差别就相对较大了

利用这一特点,我们可以通过很多方式来构建/描述数据间的强相关性

趋势性:当数据量足够大时,数据的趋势性非常明显

我们可以通过观察,但是带趋势性的一些指标需要我们构建趋势

例如节假日出游趋势,较之前涨幅比例构建增长趋势、降低趋势

周期性:规定时间间隔内,数据变换相似

一般来说,时间序列数据的周期性主要集中在月、周、日。不同的周期内,时间自带周期性峰值,我们可以通过统计当前时间与峰值的距离,反映周期性的现阶段

异常点:

异常点的数据分析或预测是相对困难的

例如淘宝681,双11,双12的电商数据

我们在分析过程中需要对这类型的异常数据进行特定的标注,也可以根据实际情况进行剔除或修正,避免异常数据对分析结果的影响

历史平移

当我们想要去做某一个特征的统计时,我们经常会用到历史平移和划窗统计

例如我们想要把前一天的数据作为今天数据的特征时

由于相邻两天的数据存在一定的相关性,所以昨天的数据也能与今天的数据具有很大程度相关性

滑窗统计

滑窗统计常用于分析固定时间区间内数据的变化

构造统计特征,如均值,最大值,最小值来反映该区间内数据的情况

对于常见得时序问题时,都可以采用这两种方式来提取特征,构建训练集。