如何在ccf()中手动计算ci.type='ma'

how to manually calculate ci.type='ma' in ccf()

我一直在尝试手动计算 ci.type='ma' 的置信区间。我读了一篇相关的 post (cross-correlation using ccf in R),这很有帮助,但我对

的细节很感兴趣
getAnywhere(plot.acf)

到目前为止我有:

x <- ccf(x=x,y=y,ci.type='ma')

clim0 <- qnorm((1+0.95)/2)/sqrt(x$n.used) # upper CI when ci.type=NULL
clim <- clim0 + * sqrt(cumsum(c(1, 2 * x$acf[-1, 
                                               i, i]^2)))  # from getAnywhere(plot.acf)

但是我不明白函数详细信息中的 i 是如何定义的。有人做过吗?

调用 getAnywhere(plot.acf),我从 1 迭代到你系列的长度:

for (i in 1L:nser) {
                clim <- clim0 * sqrt(cumsum(c(1, 2 * x$acf[-1, 
                  i, i]^2)))
                ylim <- range(c(-clim, clim, ylim))
            }

但是,在 acf 函数中,您可以使用 ci.type='ma' 对 ci 进行 cify 'ma' 见 https://stat.ethz.ch/R-manual/R-devel/library/stats/html/acf.html