我想知道如何在不使用 ** 的情况下在 R **中生成不相关的白噪声序列?arima.sim(list(order=c(0,0,0)),200)
我在这里而不是 stackoverflow 发布这个的原因是因为我觉得这需要了解白噪声的数学结构,以便我们可以构建一个关于它的程序。如果观众觉得这个问题真的属于stackoverflow,请不要对这个问题投反对票。请告诉我,然后我会将其迁移到 stackoverflow。
我想知道如何在不使用 ** 的情况下在 R **中生成不相关的白噪声序列?arima.sim(list(order=c(0,0,0)),200)
我在这里而不是 stackoverflow 发布这个的原因是因为我觉得这需要了解白噪声的数学结构,以便我们可以构建一个关于它的程序。如果观众觉得这个问题真的属于stackoverflow,请不要对这个问题投反对票。请告诉我,然后我会将其迁移到 stackoverflow。
您将必须指定一些分布,但如果您乐于使用正态分布的默认选择(事实上,arima.sim除非您使用其参数的其他选择覆盖默认值rand.gen),那么rnorm(200)就可以了:它产生了一系列不相关(事实上,甚至是独立的)且分布相同的 rv
白噪声只是一个 iid 随机变量的序列。因此,您可以使用:
rnorm(n, mean = 0, sd = 1)
为了让您更深入地了解,以下是我将如何使用它来生成随机游走:
set.seed(15)
x=NULL
x[1]=0
for (i in 2:100) {
x[i] = x[i-1] + rnorm(1,0,1)
}
ts.plot(x, main = 'Random walk 1(Xt)', xlab = 'Time', ylab = '', col='blue', lwd = 2)