BATS and TBATS for time series forecasting
Project description
BATS and TBATS time series forecasting
Package provides BATS and TBATS time series forecasting methods described in:
De Livera, A.M., Hyndman, R.J., & Snyder, R. D. (2011), Forecasting time series with complex seasonal patterns using exponential smoothing, Journal of the American Statistical Association, 106(496), 1513-1527.
Installation
From pypi:
pip install tbats
Import via:
from tbats import BATS, TBATS
Minimal working example:
from tbats import TBATS import numpy as np # required on windows for multi-processing, # see https://docs.python.org/2/library/multiprocessing.html#windows if __name__ == '__main__': np.random.seed(2342) t = np.array(range(0, 160)) y = 5 * np.sin(t * 2 * np.pi / 7) + 2 * np.cos(t * 2 * np.pi / 30.5) + \ ((t / 20) ** 1.5 + np.random.normal(size=160) * t / 50) + 10 # Create estimator estimator = TBATS(seasonal_periods=[14, 30.5]) # Fit model fitted_model = estimator.fit(y) # Forecast 14 steps ahead y_forecasted = fitted_model.forecast(steps=14) # Summarize fitted model print(fitted_model.summary())
Reading model details
# Time series analysis print(fitted_model.y_hat) # in sample prediction print(fitted_model.resid) # in sample residuals print(fitted_model.aic) # Reading model parameters print(fitted_model.params.alpha) print(fitted_model.params.beta) print(fitted_model.params.x0) print(fitted_model.params.components.use_box_cox) print(fitted_model.params.components.seasonal_harmonics)
See examples directory for more details
For Contributors
Building package:
pip install -e .[dev]
Unit and integration tests:
python setup.py test
R forecast package comparison tests. Those DO NOT RUN with default test command, you need R forecast package installed:
python setup.py test_r
Comparison to R implementation
Python implementation is meant to be as much as possible equivalent to R implementation in forecast package.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size tbats-1.0.8-py3-none-any.whl (42.9 kB) | File type Wheel | Python version py3 | Upload date | Hashes View |
Filename, size tbats-1.0.8.tar.gz (30.5 kB) | File type Source | Python version None | Upload date | Hashes View |