-
Notifications
You must be signed in to change notification settings - Fork 22
Home
Ivan Svetunkov edited this page Jan 30, 2026
·
41 revisions
Welcome to the smooth package wiki! The smooth package implements Single Source of Error (SSOE) state-space models for forecasting and time series analysis, available for both R and Python (under development).
| Function | Description | Python | R |
|---|---|---|---|
| ADAM | Augmented Dynamic Adaptive Model - unified ETS/ARIMA/regression framework | Yes | Yes |
| auto.adam | Automatic ADAM with distribution and ARIMA order selection | TBA | Yes |
| ES | Exponential Smoothing (ETS) wrapper for ADAM | Yes | Yes |
| CES | Complex Exponential Smoothing | TBA | Yes |
| SSARIMA | State Space ARIMA | TBA | Yes |
| MSARIMA | Multiple Seasonal ARIMA | TBA | Yes |
| GUM | Generalised Univariate Model | TBA | Yes |
| SMA | Simple Moving Average | TBA | Yes |
| OES | Occurrence ETS for intermittent demand | TBA | Yes |
| Function | Description | Python | R |
|---|---|---|---|
| msdecompose | Multiple seasonal decomposition (used for ADAM/ES initialization) | Yes | Yes |
| lowess | Scatter plot smoothing from Cleveland, W. S. (1979). | Yes | in stats package |
lowess was implemented in Python to fully reproduce R's behaviour. The other existing Python implementations were not as accurate.
from smooth import ADAM, ES, msdecompose
# Automatic ETS model selection
model = ADAM(model="ZXZ", lags=12)
model.fit(y)
forecasts = model.predict(h=12)
# Simple Exponential Smoothing
model = ES(model="ZXZ")
model.fit(y)
# Time series decomposition
result = msdecompose(y, lags=[12], type='additive')library(smooth)
# Automatic model selection
model <- adam(y, model="ZXZ", lags=12)
forecast(model, h=12)
# Automatic distribution and ARIMA selection
model <- auto.adam(y, model="ZZZ",
orders=list(ar=2, i=2, ma=2, select=TRUE),
distribution=c("dnorm","dlaplace","ds"))
# Exponential Smoothing
model <- es(y, model="ZXZ", h=12)ADAM is the recommended function for most forecasting tasks. It provides:
- Unified ETS and ARIMA framework
- Multiple seasonality support
- Various error distributions
- Intermittent demand handling
- External regressors
- Automatic model selection
- ... and more
- Visualisation-and-Output - plot(), print(), summary(), xtable()
- Coefficients-and-Parameters - coef(), confint(), vcov(), coefbootstrap()
- Fitted-Values-and-Forecasts - fitted(), actuals(), predict(), forecast()
- Residuals-and-Errors - residuals(), rstandard(), rmultistep(), outlierdummy()
- Likelihood-and-Information-Criteria - logLik(), AIC(), BIC(), accuracy(), pls()
- Model-Information - nobs(), nparam(), sigma(), modelType(), orders(), lags()
- Simulation-Functions - simulate(), sim.es(), sim.ssarima(), sim.ces(), sim.gum(), sim.sma()
- Refitting-and-Reforecasting - reapply(), reforecast()
- Scale-Model - sm() for modelling heteroscedasticity
- Resources - Publications and DOIs for each function