Skip to main content

Tools to support the forecasting process in Python

Project description

forecast-tools: fundamental tools to support the forecasting process in python.

DOI PyPI version License: MIT Binder Python 3.6+

forecast-tools has been developed to support forecasting education and applied forecasting research. It is MIT licensed and freely available to practitioners, students and researchers via PyPi. There is a long term plan to make forecast-tools available via conda-forge.

Vision for forecast-tools

  1. Deliverhigh quality reliable code for forecasting education and practice with full documentation and unit testing.
  2. Provide a simple to use pythonic interface that users of statsmodels and sklearn will recognise.
  3. To improve the quality of Machine Learning time series forecasting and encourage the use of best practice.


  1. Implementation of classic naive forecast benchmarks such as Naive Forecast 1 along with prediction intervals
  2. Implementation of scale-dependent, relative and scaled forecast errors.
  3. Rolling forecast origin and sliding window for time series cross validation
  4. Built in daily level datasets

Two simple ways to explore forecast-tools

  1. pip install forecast-tools
  2. Click on the launch-binder at the top of this readme. This will open example Jupyter notebooks in the cloud via Binder.


If you use forecast-tools for research, a practical report, education or any reason please include the following citation.

Monks, Thomas. (2020). forecast-tools: fundamental tools to support the forecasting process in python. Zenodo.

  author       = {Thomas Monks},
  title        = {forecast-tools: fundamental tools to support the forecasting process in python},
  year         = 2020,
  publisher    = {Zenodo},
  doi          = {10.5281/zenodo.3969789},
  url          = {}

Contributing to forecast-tools

Please fork Dev, make your modifications, run the unit tests and submit a pull request for review.

Development environment:

  • conda env create -f binder/environment.yml

  • conda activate forecast_dev

Unit tests are provided and can be run from the command pytest and its coverage extension. Run the following in the terminal.

  • pytest --cov=forecast_tools tests/

All contributions are welcome and must include unit tests!

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for forecast-tools, version 0.1.6
Filename, size File type Python version Upload date Hashes
Filename, size forecast_tools-0.1.6-py3-none-any.whl (25.4 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size forecast-tools-0.1.6.tar.gz (94.7 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page