本文介绍时间序列自相关性,并通过示例介绍R计算过程。

时间序列自相关性

自相关性是时间序列与其自身滞后一定连续时间周期的相关性程度。它也被称为“序列相关”或“滞后相关”,即衡量变量的当前值和历史值之间的关系。

当自相关性较高时,可以简单依赖过去值预测未来值。

R计算自相关性示例

假设我们有下面时间序列数据,表示在15个不同时间周期内数值变化情况:

#define data
x <- c(22, 24, 25, 25, 28, 29, 34, 37, 40, 44, 51, 48, 47, 50, 51)

我们可以使用acf()函数计算每个滞后时间周期的自相关性:

acf(x, pl=FALSE)
# Autocorrelations of series ‘x’, by lag
#
#      0      1      2      3      4      5      6      7      8      9     10     11
#  1.000  0.832  0.656  0.491  0.279  0.031 -0.165 -0.304 -0.401 -0.458 -0.450 -0.369

下面对输出结果解释如下:

  • 滞后0周期自相关性为1
  • 滞后1周期自相关性为0.832
  • 滞后2周期自相关性为0.656
  • 滞后3周期自相关性为0.491

我们也可以使用lag参数设定滞后周期:

#calculate autocorrelations up to lag=5
acf(x, lag=5, pl=FALSE)# Autocorrelations of series 'x', by lag
#
#     0     1     2     3     4     5
# 1.000 0.832 0.656 0.491 0.279 0.031

** 自相关性图示展示

acf默认情况下即显示自相关性的图示,因此只需去掉pl=FALSE参数:

#plot autocorrelation function
acf(x)

x轴显示滞后周期,y轴显示与滞后周期间的自相关性。缺省图从滞后周期为0开始,所以自相关性总是为1。我们还可以指定图示的标题:

#plot autocorrelation function with custom title
acf(x, main='Autocorrelation by Lag')

R 计算时间序列自相关性教程相关推荐

  1. R语言时间序列ARIMA新手教程

    R语言时间序列ARIMA新手教程 首先说一下ARMA回归的底层逻辑,所谓的AR模型和MA模型都是ARMA模型的一种特殊情况,有点类似正方形和长方形都是矩形.ARMA模型的表达式为: p为自回归部分的滞 ...

  2. R 计算时间序列的交叉相关性教程

    本文介绍两个时间序列的交叉相关性,并通过示例说明R的计算过程. 时间序列交叉相关性 交叉相关性是衡量一个时间序列与另一个时间序列的延迟版本的相似程度.这种类型相关性可以用于预测另一个时间序列的未来值, ...

  3. 基于滑动窗口的时间序列数据相关性分析计算

    在以往的项目中,我们想要计算时间序列的相关性的话,大都是把整体的数据中不同维度的数据当做是一个整体序列来进行两两序列之间的相关性分析计算,也比较简洁实用一些,这里今天遇上一个新的需求就是,我们需要把滑 ...

  4. R语言计算时间序列数据的移动平均值(滚动平均值、例如5日均线、10日均线等):使用zoo包中的rollmean函数计算k个周期移动平均值

    R语言计算时间序列数据的移动平均值(滚动平均值.例如5日均线.10日均线等):使用zoo包中的rollmean函数计算k个周期移动平均值 目录

  5. python使用statsmodels包中的tsa.acf函数计算时间序列数据所有滞后位置个数(级别)的自相关性(autocorrelation for every lag)

    python使用statsmodels包中的tsa.acf函数计算时间序列数据所有滞后位置个数(级别)的自相关性(autocorrelation for every lag) 目录

  6. python使用statsmodels包中的tsa.acf函数计算时间序列数据所有滞后位置个数(级别)的自相关性、tsaplots函数可视化时间序列数据所有滞后位置个数(级别)的自相关性

    python使用statsmodels包中的tsa.acf函数计算时间序列数据所有滞后位置个数(级别)的自相关性.tsaplots函数可视化时间序列数据所有滞后位置个数࿰

  7. R语言根据日历周期处理时间序列数据(周、月、年等):使用xts包的apply.monthly函数和mean函数计算时间序列的月平均值(monthly)

    R语言根据日历周期处理时间序列数据(周.月.年等):使用xts包的apply.monthly函数和mean函数计算时间序列的月平均值(monthly) 目录

  8. R语言根据日历周期处理时间序列数据(周、月、年等):使用xts包的apply.yearly函数和mean函数计算时间序列的年平均值(yearly)

    R语言根据日历周期处理时间序列数据(周.月.年等):使用xts包的apply.yearly函数和mean函数计算时间序列的年平均值(yearly) 目录

  9. R语言根据日历周期处理时间序列数据(周、月、年等):使用xts包的apply.daily函数和mean函数计算时间序列的日平均值(daily)

    R语言根据日历周期处理时间序列数据(周.月.年等):使用xts包的apply.daily函数和mean函数计算时间序列的日平均值(daily) 目录

  10. R语言计算时间序列数据的逐次差分(successive differences):使用diff函数计算时间序列数据的逐次差分值

    R语言计算时间序列数据的逐次差分(successive differences):使用diff函数计算时间序列数据的逐次差分值 目录

最新文章

  1. linux 网络编程 ping,Linux 网络编程基础(4) -- Ping 的C代码实现
  2. 什么是机器人的五点校正法_样品定量检测怎样选择内标法和外标法!
  3. 【bzoj2751】[HAOI2012]容易题(easy) 数论-快速幂
  4. Java基础--内部类及匿名内部类
  5. AES加密算法的详细简介
  6. 需要单机还是集群部署_单机、分布式、集群的区别与联系
  7. 常见职位的英文简称_想进外企?英文简历少不了,看这里,教你英文简历的形式和技巧...
  8. Centos7 超简单将Centos的yum源更换为国内的阿里云源
  9. 高可用web架构: LVS+keepalived+nginx+apache+php+eaccelerator(+nfs可选 可不选)
  10. deepin系统文本编辑器
  11. 单个正态总体方差的置信区间
  12. anaconda必须安装在c盘吗_安装anaconda
  13. 区块链技术入门,涉及哪些编程语言?
  14. android加固之后出问题,Android 应用加固
  15. C# Process.HasExited准确性
  16. 神仙道各种公式【转载】
  17. 高德开放平台 - 学习/实践
  18. 怎么查笔记本显示器屏幕大小尺寸
  19. 使用 OpenCV 构建带有二维码扫描仪的用户认证系统
  20. 计算机毕业设计SSM城市智能公交系统【附源码数据库】

热门文章

  1. 金融级IT架构-数字银行的云原生架构解析
  2. 如何解决卸载驱动之后又重新装的问题
  3. C++中的RECT类
  4. vector初始化方法(待补充)
  5. 简便word批量打印 - Office批量打印精灵(支持正版)
  6. 使用Java打印三角形
  7. 怎么用电脑把优酷的kux格式转换成mp4格式
  8. 静态代理、JDK与Cglib动态代理简单实现
  9. LDA模型原理学习及应用
  10. 《信号分析与处理》基于LabVIEW的心音信号的频域分析(数字信号、信号与系统实验、毕业设计、期末大作业)