时间序列是一组按照时间发生先后顺序进行排列,并且包含一些信息的数据点序列,在时间序列数据中通常包含了数据的发展趋势(向上、向下、保持)和数据的变化规律(季节性)等特征。而这些特征往往具有一定的规律性和可预测性,具体来说时间序列数据具有如下几种特点:

  1. 趋势性:某个变量随着时间进展或自变量变化,呈现一种比较缓慢而长期的持续上升、下降、保存不变的趋向,但变动幅度可能不相等。
  2. 季节性:某因素由于外部影响如随着自然季节的交替出现高峰与低谷的规律。
  3. 随机性:个别时刻呈现随机变动,整体呈统计规律。

在某些应用场景中需要对时间序列数据进行预测,比如在零售,电商等行业需要对未来一段时间的销售金额,客流量,订单量等进行预测,准确的预测结果可以为企业的领导层提供决策参考,并有助于提高企业的人效,为企业带来更多的利润。

一,趋势(Trend)

时间序列的数据往往包含了一定的数据发展趋势,比如下图中的数据有非常明显的趋势:

二,季节性(Seasonal)

时间序列数据中的季节性指的是数据中包含的周期性变化的规律,这些周期性变化规律往往和年度,月,季度,周等季节性时间点有密切的关系。通常季节性因子又可以分为1.加法季节性,2.乘法季节性。

2.1 加法季节性(Additive)

所谓加法季节性是指时间序列数据周期性变化的幅度不会随着时间的发展而发生变化,换句话说数据变化的幅度不受时间的影响(幅度保持不变)如下图所示:

从上图中可以看到,数据呈现出季节性变化规律,但是这种变化的幅度没有随着时间的发展而发生变化,即时间对季节性变化没有影响。

2.2 乘法季节性(Multiplicative)

所谓乘法季节性是指时间序列数据周期性变化的幅度会随着时间的发展而发生变化,换句话说数据变化的幅度和时间呈现线性关系如下图所示:

从上图中可以看到,数据呈现出季节性变化规律,并且这种季节性变化的幅度随着时间的发展而发生变化(比如逐渐变大或变小)。

三,残差(Residual)

残差是指当时间序列数据中删除了趋势和季节性特征以后剩余的部分,我们一般认为具有季节性特征的时间序列数据的残差的服从均值为0的正太分布,残差一般被认为是一种白噪声信号,我们可以通过逐步删除时间序列数据中的趋势和季节性特征来得到残差:

如上图所示当从原始数据中删除了趋势以后,剩余的成分就是:季节性+残差,接下来我们要从季节性+残差的成分中删除季节性成分后得到残差。

下面我们通过python的第三方类库statsmodes的seasonal_decompose来分解时间序列数据:

from statsmodels.tsa.seasonal import seasonal_decomposedf=pd.read_csv("airline_Passengers.csv")
df.set_index('Period',inplace=True)
df.index = pd.to_datetime(df.index)
data = df["#Passengers"]
seasonal_decomp = seasonal_decompose(data, model="additive")
seasonal_decomp.plot();

总结

时间序列数据的主要成分包含: 趋势、季节性、残差。季节性又分为加法季节性和乘法季节性。可以使用statsmodes包的seasonal_decompose方法来分解时间序列。

参考资料

statsmodels.tsa.seasonal.seasonal_decompose — statsmodels

时间序列的数据分析(一):主要成分相关推荐

  1. 时间序列的数据分析(七):数据平稳性

    之前已经完成了六篇关于时间序列的博客,还没有阅读过的读者请先阅读: 时间序列的数据分析(一):主要成分 时间序列的数据分析(二):数据趋势的计算 时间序列的数据分析(三):经典时间序列分解 时间序列的 ...

  2. 时间序列的数据分析(六):指数平滑预测法

    之前已经完成了五篇关于时间序列的博客,还没有阅读过的读者请先阅读: 时间序列的数据分析(一):主要成分 时间序列的数据分析(二):数据趋势的计算 时间序列的数据分析(三):经典时间序列分解 时间序列的 ...

  3. python数据分析及可视化(九)pandas数据规整(分组聚合、数据透视表、时间序列、数据分析流程)

    作业 拼接多个csv文件 去除重复数据,重新索引 自动挡和手动挡数目 计算每个城市二手车数量 统计每个汽车品牌平均售价价格(不是原价) 分组与聚合 如下表所示,5行3列的表格,5种水果分别对应的名称, ...

  4. Python 数据分析三剑客之 Pandas(九):时间序列

    CSDN 课程推荐:<迈向数据科学家:带你玩转Python数据分析>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python ...

  5. Python 数据分析三剑客之 Pandas(十):数据读写

    CSDN 课程推荐:<迈向数据科学家:带你玩转Python数据分析>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python ...

  6. Python 数据分析三剑客之 Pandas(八):数据重塑、重复数据处理与数据替换

    CSDN 课程推荐:<迈向数据科学家:带你玩转Python数据分析>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python ...

  7. Python 数据分析三剑客之 Pandas(七):合并数据集

    CSDN 课程推荐:<迈向数据科学家:带你玩转Python数据分析>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python ...

  8. Python 数据分析三剑客之 Pandas(六):GroupBy 数据分裂、应用与合并

    CSDN 课程推荐:<迈向数据科学家:带你玩转Python数据分析>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python ...

  9. Python 数据分析三剑客之 Pandas(五):统计计算与统计描述

    CSDN 课程推荐:<迈向数据科学家:带你玩转Python数据分析>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python ...

最新文章

  1. python的基本语句_Python的基本语句
  2. 微软看了下“打工人”的脑电波,难怪视频会议总犯困!斯坦福:女性尤甚
  3. UOJ #310 黎明前的巧克力 (FWT)
  4. 大小端、位段和内存对齐
  5. 前端学习(3138):react-hello-react之组件挂载流程
  6. 666表情包的c语言程序设计教程课后答案,C语言设计题
  7. 投影html连接电脑,电脑怎么连接投影仪?投影仪的详细安装使用教程
  8. Spring容器创建流程(6)国际化支持
  9. 关于xp操作系统下使用VC6++编写的上位机软件在win10中运行的问题
  10. 在CentOS 6.7部署wordpress博客系统Discuz论坛系统
  11. Sql 2005 中比较两个数据库差异
  12. 编译 java_如何编译java
  13. 怎么创建java项目?新建java项目的步骤
  14. 计算机内存4gb是多大,手机内存多大才不卡?专家:4GB足矣
  15. 阿里云ECS服务器内存一直居高不下,被挂木马解决方法
  16. ubuntu使用指南——root用户的设置、使用ssh远程登录、创建普通用户无法登录系统、远程重启或关闭服务器
  17. java中获取指定时间的时间戳
  18. Grunt搭建自动化web前端开发环境--完整流程
  19. 第33篇 Android Studio实现五子棋游戏(四)棋子类和主类
  20. 数学之路(3)-数据分析(6)

热门文章

  1. 怎么用计算机技术预测蛋白质结构,基于计算智能技术的蛋白质结构预测方法研究...
  2. 上传图片预览并在后台处理
  3. Java通过第三方工具实现Word、PPT转 PDF (easy)
  4. Uncaught (in promise) 的解决方法
  5. (一)图灵机器人API2.0接口构造聊天机器人
  6. Intel校招面试面经
  7. 需求工程之面谈法获取需求
  8. 深度学习1-深度学习入门及应用
  9. 信用评分卡模型 —— 基于Lending Club数据
  10. P1102 A-B数对