| % File src/library/stats/man/arima.sim.Rd |
| % Part of the R package, https://www.R-project.org |
| % Copyright 1995-2012 R Core Team |
| % Distributed under GPL 2 or later |
| |
| \name{arima.sim} |
| \alias{arima.sim} |
| \concept{autoregression} |
| \title{Simulate from an ARIMA Model} |
| \description{ |
| Simulate from an ARIMA model. |
| } |
| \usage{ |
| arima.sim(model, n, rand.gen = rnorm, innov = rand.gen(n, \dots), |
| n.start = NA, start.innov = rand.gen(n.start, \dots), |
| \dots) |
| } |
| \arguments{ |
| \item{model}{A list with component \code{ar} and/or \code{ma} giving |
| the AR and MA coefficients respectively. Optionally a component |
| \code{order} can be used. An empty list gives an ARIMA(0, 0, 0) |
| model, that is white noise.} |
| \item{n}{length of output series, before un-differencing. A strictly |
| positive integer.} |
| \item{rand.gen}{optional: a function to generate the innovations.} |
| \item{innov}{an optional times series of innovations. If not |
| provided, \code{rand.gen} is used.} |
| \item{n.start}{length of \sQuote{burn-in} period. If \code{NA}, the |
| default, a reasonable value is computed.} |
| \item{start.innov}{an optional times series of innovations to be used |
| for the burn-in period. If supplied there must be at least |
| \code{n.start} values (and \code{n.start} is by default computed |
| inside the function).} |
| \item{\dots}{additional arguments for \code{rand.gen}. Most usefully, |
| the standard deviation of the innovations generated by \code{rnorm} |
| can be specified by \code{sd}.} |
| } |
| \details{ |
| See \code{\link{arima}} for the precise definition of an ARIMA model. |
| |
| The ARMA model is checked for stationarity. |
| |
| ARIMA models are specified via the \code{order} component of |
| \code{model}, in the same way as for \code{\link{arima}}. Other |
| aspects of the \code{order} component are ignored, but inconsistent |
| specifications of the MA and AR orders are detected. The |
| un-differencing assumes previous values of zero, and to remind the |
| user of this, those values are returned. |
| |
| Random inputs for the \sQuote{burn-in} period are generated by calling |
| \code{rand.gen}. |
| } |
| \value{ |
| A time-series object of class \code{"ts"}. |
| } |
| \seealso{ |
| \code{\link{arima}} |
| } |
| \examples{ |
| 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) |
| } |
| \keyword{ts} |