在R中创建具有一定自相关性的随机变量

机器算法验证 r 自相关 随机生成 筛选
2022-04-09 16:54:17

我想在 R 中创建一个具有给定自相关的随机变量。

目标自相关定义为:

acftarget=(lag+1)(b)
b=1.41519我从一个自然数据集中得出的。您可以在使用此代码生成的下一个图中看到该函数:

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 有一个bresult=1.215306略微偏离btarget=1.41519.

这种偏差超出了我的预期,我不明白为什么会出现。是不是我用错了过滤功能?我必须提供额外的论据吗?还是有人有完全不同的方法来创建具有目标自相关的随机变量?

0个回答
没有发现任何回复~