R's ccf和Julia的crosscor中使用的等式是什么?

时间:2015-06-18 13:43:03

标签: r julia cross-correlation

我一直在摸不着头脑。现在,除了朱莉娅在滞后方面给出看似倒退的结果

之外
julia> crosscor([1,2,3,4], [1,2,3,1])'
1x7 Array{Float64,2}:
 -0.30339  0.0  0.64049  0.13484  -0.37081  -0.40452  0.30339

> print(ccf(c(1,2,3,4), c(1,2,3,1), type="correlation", plot=F))

Autocorrelations of series ‘X’, by lag

    -3     -2     -1      0      1      2      3 
 0.303 -0.405 -0.371  0.135  0.640  0.000 -0.303

这很容易通过反转x和y来解决(当你需要一小时的生活时,“很容易”是相对的),这些数字与我熟悉的任何方程都不相似(不是反正很多,无论如何。)

所以,我打开了我的统计教科书,发现了许多其他公式,我不打算用笔和纸测试。我怀疑从载体中移除手段起了作用,所以我试着不这样做(遗憾的是,这只能在Julia中完成)

julia> crosscor([1,2,3,4], [1,2,3,1], demean=false)'
1x7 Array{Float64,2}:
 0.188562  0.518545  0.942809  0.848528  0.518545  0.235702  0.0471405

但这仍然不像我用笔和纸计算的标准化互相关(我可能已经犯过的错误)。

简而言之:我需要引用这个公式,那它是什么?

1 个答案:

答案 0 :(得分:3)

我认为引用此摘录可以通过StackOverflow的使用条款来解决问题吗?从Venables和Ripley(2002)的第390页(第14.1节),您可以找到他们在acf()函数中使用的定义:

enter image description here

如果您查看R中ccf()函数的源代码(在提示符下键入" ccf"您可以看到acf()的使用方式,可以查询上述acf()实现与计算有关。