首页 > 解决方案 > 如何对观察结果运行白噪声和自回归模型(1)

问题描述

我正在尝试利用 FitAR 包和自回归模型/AR(1)——参见下面的#A——将噪声(例如白噪声/随机噪声,参见下面的#B)与 lynx 计数进行比较。设置它一直令人困惑。我正在提取我遇到的随机噪声示例和来自 FitAR 的 lynx 数据。白噪声模型将有助于确定 lynx 数据中可能具有重要意义的内容。

#猞猁

install.packages(FitAR)
library(FitAR)
library(lattice)
library(leaps)
library(ltsa)
library(bestglm)
help("FitAR-package")

par(mfrow=c(1,2))
lynx <- (log(lynx))
ans <- FitAR((lynx),1)
z4<-Boot.FitAR(ans)
par(mfrow=c(2,1))

TimeSeriesPlot((lynx))
title(main="lynx")

TimeSeriesPlot(z4)
title(main="Simulated AR lynx")

#B 白噪声

install.packages("compositions")
library("compositions")

rnorm(n, mean = 0, sd = 1)

set.seed(100) 
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', xlab = '', ylab = '', col='blue', lwd = 2)

标签: rautoregressive-modelswhitenoise

解决方案


这本书有一些在 R 中生成白噪声时间序列的例子。

set.seed(123)
## random normal variates
GWN <- rnorm(n = 100, mean = 5, sd = 0.2)
## random Poisson variates
PWN <- rpois(n = 50, lambda = 20)
TimeSeriesPlot(GWN)
TimeSeriesPlot(PWN)

在此处输入图像描述

您可以将这些白噪声示例与 FitAR 一起使用。

ans <- FitAR(GWN, 1, MeanMLEQ=TRUE)
TimeSeriesPlot(ans)

在此处输入图像描述

我发现这个 FitAR文档很有趣

它有一个模拟高斯噪声的例子

library(FitAR)
set.seed(123)
phi <- c(2.7607, -3.8106, 2.6535, -0.9238)
z <- SimulateGaussianAR(phi, 1000)
ans <- FitAR(z, 4, MeanMLEQ=TRUE)
TimeSeriesPlot(ans)

推荐阅读