forecast.lm {forecast}R Documentation

Forecast a linear model with possible time series components

Description

forecast.lm is used to predict linear models, especially those involving trend and seasonality components.

Usage

## S3 method for class 'lm'
forecast(object, newdata, h=10, level=c(80,95), fan=FALSE, 
    lambda=object$lambda, ...)

Arguments

object

Object of class "lm", usually the result of a call to lm or tslm.

newdata

An optional data frame in which to look for variables with which to predict. If omitted, it is assumed that the only variables are trend and season, and h forecasts are produced.

level

Confidence level for prediction intervals.

fan

If TRUE, level is set to seq(50,99,by=1). This is suitable for fan plots.

h

Number of periods for forecasting. Ignored if newdata present.

lambda

Box-Cox transformation parameter. Ignored if NULL. Otherwise, forecasts back-transformed via an inverse Box-Cox transformation.

...

Other arguments passed to predict.lm().

Details

forecast.lm is largely a wrapper for predict.lm() except that it allows variables "trend" and "season" which are created on the fly from the time series characteristics of the data. Also, the output is reformatted into a forecast object.

Value

An object of class "forecast".

The function summary is used to obtain and print a summary of the results, while the function plot produces a plot of the forecasts and prediction intervals.

The generic accessor functions fitted.values and residuals extract useful features of the value returned by forecast.lm.

An object of class "forecast" is a list containing at least the following elements:

model

A list containing information about the fitted model

method

The name of the forecasting method as a character string

mean

Point forecasts as a time series

lower

Lower limits for prediction intervals

upper

Upper limits for prediction intervals

level

The confidence values associated with the prediction intervals

x

The historical data for the response variable.

residuals

Residuals from the fitted model. That is x minus fitted values.

fitted

Fitted values

Author(s)

Rob J Hyndman

See Also

tslm, lm.

Examples

y <- ts(rnorm(120,0,3) + 1:120 + 20*sin(2*pi*(1:120)/12), frequency=12)
fit <- tslm(y ~ trend + season)
plot(forecast(fit, h=20))

[Package forecast version 3.24 Index]