forecast-tools

forecast_tools provides fundamental tools to support the forecasting process in python

https://github.com/tommonks/forecast-tools

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (17.1%) to scientific vocabulary

Keywords

forecasting python3

Keywords from Contributors

simulation-model
Last synced: 4 months ago · JSON representation ·

Repository

forecast_tools provides fundamental tools to support the forecasting process in python

Basic Info
Statistics
  • Stars: 7
  • Watchers: 1
  • Forks: 1
  • Open Issues: 9
  • Releases: 13
Topics
forecasting python3
Created almost 6 years ago · Last pushed 9 months ago
Metadata Files
Readme Changelog License Citation

README.md

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

DOI ORCID: Monks PyPI version fury.io License: MIT Binder Python Read the Docs

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. Deliver high 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.

Features:

  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. Implementation of scale-dependent and relative metrics to evaluate forecast prediction intervals
  4. Rolling forecast origin and sliding window for time series cross validation
  5. Built in daily level datasets
  6. An interactive plotting tool to visualise train test splits and forecasts.

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.
  3. Read our documentation on GitHub pages

Citation

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. http://doi.org/10.5281/zenodo.3759863

```tex @software{forecast_tools, author = {Monks, Thomas}, title = {forecast-tools}, month = dec, year = 2023, publisher = {Zenodo}, doi = {10.5281/zenodo.3759863}, url = {https://zenodo.org/doi/10.5281/zenodo.3759863} }

```

Contributing to forecast-tools

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

We provide a conda environment for development of forecast-tools. We recommend use of mamba as opposed to conda (although conda will work) as it is FOSS and faster. Install from mini-forge

Development environment:

mamba env create -f binder/environment.yml mamba activate forecast_tools

Unit tests are provided and can be run via hatch and its coverage extension. Run the following in the terminal.

To run tests in multiple Python environments (3.9-3.12)

hatch test --all

To obtain a coverage report run

hatch test --cover

All contributions are welcome and must include unit tests!

Owner

  • Name: Tom Monks
  • Login: TomMonks
  • Kind: user

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: forecast-tools
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Thomas
    family-names: Monks
    affiliation: University of Exeter
    orcid: 'https://orcid.org/0000-0003-2631-4481'
repository-code: 'https://github.com/TomMonks/forecast-tools'
url: >-
  https://tommonks.github.io/forecast-tools/content/00_front_page.html
repository: 'https://pypi.org/project/forecast-tools/'
keywords:
  - python
  - forecasting
  - operational research
license: MIT

GitHub Events

Total
  • Create event: 3
  • Release event: 2
  • Issues event: 1
  • Watch event: 1
  • Issue comment event: 3
  • Push event: 37
  • Pull request event: 4
Last Year
  • Create event: 3
  • Release event: 2
  • Issues event: 1
  • Watch event: 1
  • Issue comment event: 3
  • Push event: 37
  • Pull request event: 4

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 142
  • Total Committers: 2
  • Avg Commits per committer: 71.0
  • Development Distribution Score (DDS): 0.056
Top Committers
Name Email Commits
TomMonks t****s@g****m 134
Tom Monks T****s@u****m 8

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 24
  • Total pull requests: 36
  • Average time to close issues: 4 months
  • Average time to close pull requests: 5 minutes
  • Total issue authors: 2
  • Total pull request authors: 1
  • Average comments per issue: 1.08
  • Average comments per pull request: 0.03
  • Merged pull requests: 33
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 4
  • Average time to close issues: N/A
  • Average time to close pull requests: 1 minute
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 4
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • TomMonks (23)
  • amyheather (1)
Pull Request Authors
  • TomMonks (39)
Top Labels
Issue Labels
enhancement (14) good first issue (3) documentation (3) 0.2.0 (3) invalid (2) bug (2) question (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 133 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 2
  • Total versions: 9
  • Total maintainers: 2
pypi.org: forecast-tools

Tools to support forecasting education in Python

  • Versions: 9
  • Dependent Packages: 0
  • Dependent Repositories: 2
  • Downloads: 133 Last month
Rankings
Dependent packages count: 10.1%
Dependent repos count: 11.5%
Average: 19.4%
Forks count: 22.6%
Stargazers count: 25.1%
Downloads: 27.6%
Maintainers (2)
Last synced: 4 months ago

Dependencies

requirements.txt pypi
  • joblib >=0.14.1
  • matplotlib >=3.1.3
  • numpy >=1.18.1
  • pandas >=1.0.1
  • scipy >=1.4.1
  • seaborn >=0.10.0
.github/workflows/python-package.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/python-publish.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
binder/environment.yml conda
  • jupyterlab 4.0.9.*
  • matplotlib 3.8.2.*
  • numpy 1.19.2.*
  • pandas 2.1.4.*
  • pip 23.3.1.*
  • pytest 7.4.3.*
  • python 3.11.*
  • scipy 1.11.4.*
  • seaborn 0.13.0.*
  • statsmodels 0.14.0.*
setup.py pypi