Learn R Programming

⚠️There's a newer version (8.24.0) of this package.Take me there.

forecast

The R package forecast provides methods and tools for displaying and analysing univariate time series forecasts including exponential smoothing via state space models and automatic ARIMA modelling.

This package is now retired in favour of the fable package. The forecast package will remain in its current state, and maintained with bug fixes only. For the latest features and development, we recommend forecasting with the fable package.

Installation

You can install the stable version from CRAN.

install.packages('forecast', dependencies = TRUE)

You can install the development version from Github

# install.packages("remotes")
remotes::install_github("robjhyndman/forecast")

Usage

library(forecast)
library(ggplot2)

# ETS forecasts
USAccDeaths %>%
  ets() %>%
  forecast() %>%
  autoplot()

# Automatic ARIMA forecasts
WWWusage %>%
  auto.arima() %>%
  forecast(h=20) %>%
  autoplot()

# ARFIMA forecasts
library(fracdiff)
x <- fracdiff.sim( 100, ma=-.4, d=.3)$series
arfima(x) %>%
  forecast(h=30) %>%
  autoplot()

# Forecasting with STL
USAccDeaths %>%
  stlm(modelfunction=ar) %>%
  forecast(h=36) %>%
  autoplot()

AirPassengers %>%
  stlf(lambda=0) %>%
  autoplot()

USAccDeaths %>%
  stl(s.window='periodic') %>%
  forecast() %>%
  autoplot()

# TBATS forecasts
USAccDeaths %>%
  tbats() %>%
  forecast() %>%
  autoplot()

taylor %>%
  tbats() %>%
  forecast() %>%
  autoplot()

For more information

License

This package is free and open source software, licensed under GPL-3.

Copy Link

Version

Install

install.packages('forecast')

Monthly Downloads

191,858

Version

8.21

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Rob Hyndman

Last Published

February 27th, 2023

Functions in forecast (8.21)

CVar

k-fold Cross-Validation applied to an autoregressive model
BoxCox

Box Cox Transformation
BoxCox.lambda

Automatic selection of Box Cox transformation parameter
Arima

Fit ARIMA model to univariate time series
arimaorder

Return the order of an ARIMA or ARFIMA model
arfima

Fit a fractionally differenced ARFIMA model
bld.mbb.bootstrap

Box-Cox and Loess-based decomposition bootstrap.
baggedModel

Forecasting using a bagged model
arima.errors

Errors from a regression model with ARIMA errors
CV

Cross-validation statistic
accuracy.default

Accuracy measures for a forecast model
Acf

(Partial) Autocorrelation and Cross-Correlation Function Estimation
autolayer.mts

Automatically create a ggplot for time series objects
checkresiduals

Check that residuals from a time series model look like white noise
bizdays

Number of trading days in each season
bats

BATS model (Exponential smoothing state space model with Box-Cox transformation, ARMA errors, Trend and Seasonal components)
autolayer

Create a ggplot layer appropriate to a particular data type
auto.arima

Fit best ARIMA model to univariate time series
forecast.fracdiff

Forecasting using ARIMA or ARFIMA models
forecast.HoltWinters

Forecasting using Holt-Winters objects
ets

Exponential smoothing state space model
findfrequency

Find dominant frequency of a time series
dshw

Double-Seasonal Holt-Winters Forecasting
easter

Easter holidays in each season
forecast-package

forecast: Forecasting Functions for Time Series and Linear Models
forecast.StructTS

Forecasting using Structural Time Series models
forecast.nnetar

Forecasting using neural network models
fitted.ARFIMA

h-step in-sample forecasts for time series models.
forecast.bats

Forecasting using BATS and TBATS models
gglagplot

Time series lag ggplots
autoplot.decomposed.ts

Plot time series decomposition components using ggplot
forecast.baggedModel

Forecasting using a bagged model
forecast.modelAR

Forecasting using user-defined model
forecast.ets

Forecasting using ETS models
autoplot.acf

ggplot (Partial) Autocorrelation and Cross-Correlation Function Estimation and Plotting
forecast.mts

Forecasting time series
forecast.mlm

Forecast a multiple linear model with possible time series components
is.constant

Is an object constant?
dm.test

Diebold-Mariano test for predictive accuracy
gas

Australian monthly gas production
croston

Forecasts for intermittent demand using Croston's method
gold

Daily morning gold prices
forecast.lm

Forecast a linear model with possible time series components
StatForecast

Forecast plot
is.acf

Is an object a particular model type?
ma

Moving-average smoothing
gghistogram

Histogram with optional normal and kernel density functions
mstl

Multiple seasonal decomposition
getResponse

Get response variable from time series model.
meanf

Mean Forecast
is.forecast

Is an object a particular forecast type?
ocsb.test

Osborn, Chui, Smith, and Birchenhall Test for Seasonal Unit Roots
msts

Multi-Seasonal Time Series
nsdiffs

Number of differences required for a seasonally stationary series
ndiffs

Number of differences required for a stationary series
nnetar

Neural Network Time Series Forecasts
ggmonthplot

Create a seasonal subseries ggplot
autoplot.mforecast

Multivariate forecast plot
reexports

Objects exported from other packages
rwf

Naive and Random Walk Forecasts
na.interp

Interpolate missing values in a time series
fourier

Fourier terms for modelling seasonality
forecast.stl

Forecasting using stl objects
plot.forecast

Forecast plot
forecast.ts

Forecasting time series
modelAR

Time Series Forecasts with a user-defined model
monthdays

Number of days in each season
plot.Arima

Plot characteristic roots from ARIMA model
plot.ets

Plot components from ETS model
ggseasonplot

Seasonal plot
seasonal

Extract components from a time series decomposition
seasonaldummy

Seasonal dummy variables
plot.bats

Plot components from BATS model
tbats

TBATS model (Exponential smoothing state space model with Box-Cox transformation, ARMA errors, Trend and Seasonal components)
tslm

Fit a linear model with time series components
ggtsdisplay

Time series display
residuals.forecast

Residuals for various time series models
taylor

Half-hourly electricity demand
seasadj

Seasonal adjustment
subset.ts

Subsetting a time series
splinef

Cubic Spline Forecast
tbats.components

Extract components of a TBATS model
thetaf

Theta method forecast
woolyrnq

Quarterly production of woollen yarn in Australia
wineind

Australian total wine sales
tsoutliers

Identify and replace outliers in a time series
tsCV

Time series cross-validation
simulate.ets

Simulation from a time series model
ses

Exponential smoothing forecasts
sindexf

Forecast seasonal index
tsclean

Identify and replace outliers and missing values in a time series