forecast
forecast multiple steps ahead
Description
Calculate forecasts multiple steps ahead.
Usage
forecast(model, data, horizon=36, percent=100, conditioning.inputs=NULL, conditioning.inputs.forecasts=NULL)
Required Arguments
- model
-
An object of class TSmodel.
- data
-
An object of class TSdata.
Optional Arguments
- conditioning.inputs
-
A time series matrix or list of time series matrices to use as input variables.
- conditioning.inputs.forecasts
-
A time series matrix or list of time series matrices to append to input
variables for the forecast periods.
- horizon
-
The number of periods to forecast.
- percent
-
A vector indication percentages of the last input to use for forecast periods.
Value
The result is an object of class forecast which is a list with
elements $model, $horizon, $conditioning.inputs, $percent, $pred and $forecast.
$forecast is a list with TSdata objects as elements, one for each element
in the list conditioning.inputs.
$pred contains the one-step ahead forecasts for the preiods when output data
is available.
There is a plot method for this class.
Details
Calculate (multiple) forecasts from the end of data to a horizon determined
either from supplied input data or the argument horizon (more details below).
In the case of a model with no inputs the horizon is determined by the
argument horizon.
In the case of models with inputs, on which the forecasts
are conditioned, the argument horizon is ignored (except when percent is
specified) and the actual horizon is determined by the inputs in the
following way:
If inputs are not specified by optional arguments (as below) then the default
will be to use input.data(data). This will be the same as the function l() unless
input.data(data) is longer than
output.data(data) (after NAs are trimmed from each separately).
Otherwise, if conditioning.inputs is specified it is used for input.data(data).
It must be a time series matrix or a list of time series matrices each
of which is used in turn as input.data(data). The default above is the same as
forecast(model, trim.na(data), conditioning.inputs=trim.na(input.data(data)) )
Otherwise, if conditioning.inputs.forecasts is specified it is appended
to input.data(data). It must be a time series
matrix or a list of time series matrices each of which is
appended to input.data(data) and the concatenation used as conditioning.inputs.
Both conditioning.inputs and conditioning.inputs.forecasts should not be
specified.
Otherwise, if percent is specified then conditioning.inputs.forecasts are set
to percent/100 times the value of input corresponding to the last period
of output.data(data) and used for horizon periods. percent can be a vector,
in which case each value is applied in turn. ie c(90,100,110) would would
give results for conditioning.input.forcasts 10 percent above and below
the last value of input.
See Also
Examples
pr <- forecast(model)
plot(pr)
return to Table of Contents