如何计算R中的自相关函数

时间:2015-11-04 04:41:49

标签: r

我想知道如下定义的计算自相关函数的最佳方法。

对于i = 1,2,...我想计算第i个自相关函数acf 如果v(k)= v(k + i),则这是从k = 1到ni的+1,如果v(k)不同于v(k + i),则为-1,其中n是长度向量。

例如:

if v<-c(0,1,1,0,0) and i = 2.  Then
acf(v) = (-1) + (-1) + (-1)  = -3

谢谢!

2 个答案:

答案 0 :(得分:1)

使用R-help怎么样?你应该找到acf函数。

v = c(1,1,0,0,1,0,1,0,1)
acf(v,plot=F) -> acf_v
acf_v[2]

答案 1 :(得分:1)

我创建了一个功能,但仍然在寻找一种简短有效的方法。

这是功能:

> v<-c(0,1,1,1,0,1,1)
> acf_bit <-function(vec,lag) {
+   m<-length(vec)
+   t<-0
+   for (k in 1:(m-lag)) {
+     if (v[k]==v[k+lag]) {t<-t+1}
+     else {t<-t-1}
+   }
+   return(t)
+ }
> acf_bit(v,2)
[1] -1