首页 > 编程知识 正文

R语言自相关系数,r语言进行相关性分析

时间:2023-05-04 00:33:45 阅读:205187 作者:4411

r语言实现自相关分析和偏相关分析 自相关分析

为什么要做自相关分析:

对数据进行建模前首先要对数据有一个大致的理解,自相关分析可以帮助人们看出数据是否平稳,时间序列是否存在某种变化的趋势。

自相关简介:

自相关是指同一时间序列在不同时刻取值的相关程度,假设有时间序列xt,t=1,2,3,…,则在此时刻 t 和 t+n 之间的相关即为 n 阶自相关,其定义如下:

通俗上说,就是把一列数据按照滞后数拆成两列数据,再对这两列数据做类似相关系数的操作。如下图

通过r语言实现自相关分析:

在r语言中,可直接使用acf函数分析序列自相关性
函数定义:

acf(x,lag.max=NULL,type=c("correlation","covariance","partial"),plot=TRUE,na.nation=na.fail,demean=TRUE)

lag.max 为最大之后阶数,默认是 10 ∗ l o g 1 0 ( n / m ) 10*log_10({n/m}) 10∗log1​0(n/m)
type 可设置计算 acf 的类型,默认是相关系数,还有协方差,偏相关系数。
na.nation 可用来处理缺失值,可以使用na.pass

下面对r自带的airmiles数据进行自相关分析。

acf(airmiles,type='correlation',lag.max=10)

输出结果:

由图可看出,滞后阶数为0时,相关系数为1,随着滞后阶数的增加。相关系数逐渐减弱并趋于稳定

偏相关分析

引出:

求出滞后k自相关系数p(k)时,实际上得到并不是x(t)与x(t-k)之间单纯的相关关系。因为中间会受到k-1个随机变量x(t-1)、x(t-2)、……、x(t-k+1)的影响,而这k-1个随机变量又都和x(t-k)具有相关关系,所以自相关系数p(k)里实际掺杂了其他变量对x(t)与x(t-k)的影响。

为了能单纯测度 x(t-k) 对 x(t) 的影响,引出偏自相关系数的概念。

直观上解释,对于平稳时间序列{x(t)},所谓滞后k偏自相关系数指在给定中间k-1个随机变量
x(t-1)、x(t-2)、……、x(t-k+1)的条件下,或者说,在剔除了中间k-1个随机变量
x(t-1)、x(t-2)、……、x(t-k+1)的干扰之后,x(t-k)对x(t)影响的相关程度。

r语言实现:
在r语言中,可直接使用pacf函数分析序列自相关性

函数定义及用法类似acf函数

pacf(airmiles,lag.max=10)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。