我想在 R 中创建一个具有给定自相关的随机变量。
目标自相关定义为:
和我从一个自然数据集中得出的。您可以在使用此代码生成的下一个图中看到该函数:
lag <- seq(0,52)
b <- 1.41519
acf.target <- (lag+1)^(-b)
plot(lag, acf.target, col="green", type="l", xaxs="i", yaxs="i", las=1, lwd=2)
使用这个问题的答案中显示的 R 方法,我创建了一个随机变量,然后用我的目标自相关函数过滤了该变量:
n <- 100000
var <- rnorm(n)
var_autocor <- filter(var, filter=acf.target, circular = T)
但是如果我计算自相关,var_autocor
我会得到目标自相关函数的差异:
acf(var_autocor)
lines(lag, acf.target, col="green")
我计算出生成的变量 ( var_autocor
) 的 acf 有一个略微偏离.
这种偏差超出了我的预期,我不明白为什么会出现。是不是我用错了过滤功能?我必须提供额外的论据吗?还是有人有完全不同的方法来创建具有目标自相关的随机变量?