A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

OpenSTEF

A Python package which is used to make short term forecasts for the energy sector.
https://github.com/OpenSTEF/openstef

Category: Energy Systems
Sub Category: Load and Demand Forecasting

Keywords

data-science energy energy-forecasting forecasting machine-learning python time-series

Keywords from Contributors

lfenergy openstef archiving transforms parallel conversion observation routes measur compose

Last synced: about 17 hours ago
JSON representation

Repository metadata

Automated Machine Learning pipelines. Builds the Open Short Term Energy Forecasting package.

README.md

OpenSTEF

Downloads
Downloads
CII Best Practices

Bugs
Code Smells
Coverage
Duplicated Lines (%)
Maintainability Rating
Reliability Rating
Security Rating
Technical Debt
Vulnerabilities

OpenSTEF is a Python package designed for generating short-term forecasts in the energy sector. The repository includes all the essential components required for machine learning pipelines that facilitate the forecasting process. To utilize the package, users are required to furnish their own data storage and retrieval interface.

Table of contents

External information sources

Installation

Install the openstef package

pip install openstef

Remark regarding installation within a conda environment on Windows

A version of the pywin32 package will be installed as a secondary dependency along with the installation of the openstef package. Since conda relies on an old version of pywin32, the new installation can break conda's functionality. The following command can solve this issue:

pip install pywin32==300

For more information on this issue see the readme of pywin32 or this Github issue.

Remark regarding installation on Apple Silicon

If you want to install the openstef package on Apple Silicon (Mac with M1-chip or newer), you can encounter issues with the dependencies, such as xgboost. Solution:

  1. Run brew install libomp (if you haven’t installed Homebrew: follow instructions here)
  2. If your interpreter can not find the libomp installation in /usr/local/bin, it is probably in /opt/brew/Cellar. Run:
mkdir -p /usr/local/opt/libomp/
ln -s /opt/brew/Cellar/libomp/{your_version}/lib /usr/local/opt/libomp/lib
  1. Uninstall xgboost with pip (pip uninstall xgboost) and install with conda-forge (conda install -c conda-forge xgboost)
  2. If you encounter similar issues with lightgbm: uninstall lightgbm with pip (pip uninstall lightgbm) and install later version with conda-forge (conda install -c conda-forge 'lightgbm>=4.2.0')

Remark regarding installation with minimal XGBoost dependency

It is possible to install openSTEF with a minimal XGBoost (CPU-only) package. This only works on x86_64 (amd64) Linux and Windows platforms. Advantage is that significantly smaller dependencies are installed. In that case run:

pip install openstef[cpu]

Usage

Example notebooks

To help you get started, a set of fundamental example notebooks has been created. You can access these offline examples here.

Reference Implementation

A complete implementation including databases, user interface, example data, etc. is available at: https://github.com/OpenSTEF/openstef-reference

screenshot
Screenshot of the operational dashboard showing the key functionality of OpenSTEF.
Dashboard documentation can be found here.

To run a task use:

python -m openstef task <task_name>

Database connector for openstef

This repository provides an interface to OpenSTEF (reference) databases. The repository can be found here.

License

This project is licensed under the Mozilla Public License, version 2.0 - see LICENSE for details.

Licenses third-party libraries

This project includes third-party libraries, which are licensed under their own respective Open-Source licenses. SPDX-License-Identifier headers are used to show which license is applicable. The concerning license files can be found in the LICENSES directory.

Contributing

Please read CODE_OF_CONDUCT.md, CONTRIBUTING.md and PROJECT_GOVERNANCE.md for details on the process for submitting pull requests to us.

Contact

Please read SUPPORT.md for how to connect and get into contact with the OpenSTEF project


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 4 days ago

Total Commits: 2,316
Total Committers: 41
Avg Commits per committer: 56.488
Development Distribution Score (DDS): 0.837

Commits in past year: 120
Committers in past year: 18
Avg Commits per committer in past year: 6.667
Development Distribution Score (DDS) in past year: 0.608

Name Email Commits
black a****n@g****m 378
Jan Maarten van Doorn 5****n 373
Frank Kreuwel f****l@a****m 264
Frank Kreuwel f****l@g****m 227
Bram Harmsen b****n@a****m 224
Enrico Schmitz 2****z 191
David Swinkels d****s@a****m 131
Charlotte Cambier van Nooten c****n@a****m 88
bhardier b****r@p****m 86
Alexis Mignon a****n@p****m 52
Martijn Cazemier m****r@a****m 34
Frederik Stoel 6****l 31
Maria Manoli m****m@g****m 27
gfsdekoning g****g@g****m 25
David Swinkels D****s 21
Jonita Ruiter 1****r 21
Jonas van den Bogaard j****o@g****m 18
Egor Dmitriev e****2@g****m 16
Lars Schilders 1****s 16
Clara De Smet 1****t 13
Augustin Touron a****n@r****m 13
Bart Pleiter b****r@a****m 13
dependabot[bot] 4****] 12
Denise d****k@a****m 12
thomasnijsen 6****n 6
OpenSTEF github account 1****F 3
Martino Mensio m****o@o****t 3
Florian Oppermann f****n@e****e 3
Majid Khoshrou m****u@a****m 3
ylvab 4****b 1
and 11 more...

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 106
Total pull requests: 518
Average time to close issues: 6 months
Average time to close pull requests: 8 days
Total issue authors: 21
Total pull request authors: 36
Average comments per issue: 0.89
Average comments per pull request: 0.99
Merged pull request: 455
Bot issues: 0
Bot pull requests: 16

Past year issues: 5
Past year pull requests: 75
Past year average time to close issues: 5 months
Past year average time to close pull requests: 11 days
Past year issue authors: 4
Past year pull request authors: 15
Past year average comments per issue: 0.2
Past year average comments per pull request: 0.6
Past year merged pull request: 66
Past year bot issues: 0
Past year bot pull requests: 4

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/OpenSTEF/openstef

Top Issue Authors

  • FrankKr (23)
  • BenoitHardier (18)
  • JanMaartenvanDoorn (18)
  • AlexisMignon (17)
  • bremme (10)
  • Sander3003 (3)
  • maxi-fort (2)
  • charlottecvn (2)
  • Ale0x78 (1)
  • whoisroop (1)
  • Davidswinkels (1)
  • TonyXiang8787 (1)
  • chagtmisayf (1)
  • igibek (1)
  • wfstoel (1)

Top Pull Request Authors

  • FrankKr (139)
  • JanMaartenvanDoorn (74)
  • Davidswinkels (42)
  • EnricoASchmitz (28)
  • egordm (23)
  • lschilders (19)
  • wfstoel (19)
  • bremme (18)
  • dependabot[bot] (16)
  • clara-de-smet (16)
  • bartpleiter (14)
  • BenoitHardier (13)
  • JonitaRuiter (12)
  • AlexisMignon (11)
  • gfsdekoning (11)

Top Issue Labels

  • feature (21)
  • ready-to-implement (17)
  • good first issue (14)
  • fix (10)
  • chore (10)
  • sklearn (10)
  • feature engineering (4)
  • localization (3)
  • help wanted (2)
  • dependencies (1)

Top Pull Request Labels

  • fix (97)
  • feature (85)
  • chore (76)
  • dependencies (16)
  • python (1)

Package metadata

pypi.org: openstef

Open short term energy forecaster

  • Homepage: https://github.com/OpenSTEF/openstef
  • Documentation: https://openstef.readthedocs.io/
  • Licenses: MPL-2.0
  • Latest release: 3.4.73 (published 3 days ago)
  • Last Synced: 2025-04-25T13:35:51.430Z (1 day ago)
  • Versions: 176
  • Dependent Packages: 1
  • Dependent Repositories: 3
  • Downloads: 6,899 Last month
  • Docker Downloads: 13
  • Rankings:
    • Dependent packages count: 3.244%
    • Average: 7.681%
    • Downloads: 8.11%
    • Stargazers count: 8.539%
    • Dependent repos count: 9.143%
    • Forks count: 9.37%
  • Maintainers (1)

Dependencies

requirements.txt pypi
  • cufflinks *
  • holidays *
  • lightgbm *
  • matplotlib *
  • mlflow *
  • networkx *
  • numpy *
  • optuna *
  • pandas *
  • plotly *
  • protobuf ==3.20.1
  • pydantic *
  • pymsteams *
  • pytz *
  • scikit-learn *
  • scipy *
  • structlog *
  • xgboost *
.github/workflows/black-format-code.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/docs-check.yaml actions
  • actions/checkout v2 composite
  • ammaraskar/sphinx-action master composite
.github/workflows/docs-publish.yaml actions
  • actions/checkout master composite
  • actions/setup-python v2 composite
  • actions/setup-python v4 composite
  • ad-m/github-push-action master composite
  • sphinx-notes/pages v2 composite
.github/workflows/pr-labeler.yaml actions
  • TimonVS/pr-labeler-action v3 composite
.github/workflows/python-build.yaml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • sonarsource/sonarcloud-github-action master composite
.github/workflows/python-upload-package.yaml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/release.yaml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/reuse-compliance.yaml actions
  • actions/checkout v2 composite
  • fsfe/reuse-action v1 composite
docs/doc-requirements.txt pypi
  • docformatter ==1.5.0
  • jinja2 ==3.0.0
  • mkdocs ==1.2.3
  • pydata-sphinx-theme ==0.12.0
  • pydocstyle ==6.1.1
  • sphinx_autodoc_typehints ==1.19.4
  • toml ==0.10.2
test-requirements.txt pypi
  • autoflake ==1.7.5 test
  • bandit ==1.7.4 test
  • black ==22.10.0 test
  • docformatter ==1.5.0 test
  • isort ==5.10.1 test
  • pylint ==2.15.4 test
  • pytest ==7.1.3 test
  • pytest-asyncio ==0.19.0 test
  • pytest-cov ==4.0.0 test
  • scons ==4.4.0 test
pyproject.toml pypi
setup.py pypi
test/unit/trained_models/mlruns/893156335105023143/2ca1d126e8724852b303b256e64a6c4f/artifacts/model/requirements.txt pypi
  • cloudpickle ==2.2.1 test
  • mlflow <3,>=2.3 test
  • numpy ==1.23.5 test
  • pandas ==2.0.1 test
  • psutil ==5.9.5 test
  • scikit-learn ==1.2.2 test
  • scipy ==1.10.1 test
  • xgboost ==1.7.5 test

Score: 17.326138680667086