當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R arima.sim 從 ARIMA 模型進行模擬


R語言 arima.sim 位於 stats 包(package)。

說明

從 ARIMA 模型進行模擬。

用法

arima.sim(model, n, rand.gen = rnorm, innov = rand.gen(n, ...),
          n.start = NA, start.innov = rand.gen(n.start, ...),
          ...)

參數

model

包含組件 ar 和/或 ma 的列表,分別給出 AR 和 MA 係數。可以選擇使用組件order。空列表給出 ARIMA(0, 0, 0) 模型,即白噪聲。

n

輸出係列的長度,在un-differencing之前。嚴格的正整數。

rand.gen

可選:產生創新的函數。

innov

可選的時代係列創新。如果未提供,則使用rand.gen

n.start

‘burn-in’周期的長度。如果是 NA (默認值),則會計算合理的值。

start.innov

用於 burn-in 期間的可選創新時間序列。如果提供,則必須至少有 n.start 值(默認情況下,n.start 在函數內部計算)。

...

rand.gen 的附加參數。最有用的是,rnorm 生成的創新的標準差可以由 sd 指定。

細節

有關 ARIMA 模型的精確定義,請參閱arima

檢查 ARMA 模型的平穩性。

ARIMA 模型通過 modelorder 組件指定,方式與 arima 相同。 order 組件的其他方麵被忽略,但檢測到 MA 和 AR 階數不一致的規範。 un-differencing 假定先前的值為零,為了提醒用戶這一點,將返回這些值。

‘burn-in’周期的隨機輸入是通過調用 rand.gen 生成的。

"ts" 的時間序列對象。

例子

require(graphics)

arima.sim(n = 63, list(ar = c(0.8897, -0.4858), ma = c(-0.2279, 0.2488)),
          sd = sqrt(0.1796))
# mildly long-tailed
arima.sim(n = 63, list(ar = c(0.8897, -0.4858), ma = c(-0.2279, 0.2488)),
          rand.gen = function(n, ...) sqrt(0.1796) * rt(n, df = 5))

# An ARIMA simulation
ts.sim <- arima.sim(list(order = c(1,1,0), ar = 0.7), n = 200)
ts.plot(ts.sim)

也可以看看

arima

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Simulate from an ARIMA Model。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。