# reconcile
[![status](http://www.repostatus.org/badges/latest/concept.svg)](http://www.repostatus.org/#concept)
[![ci](https://github.com/dirmeier/reconcile/actions/workflows/ci.yaml/badge.svg)](https://github.com/dirmeier/reconcile/actions/workflows/ci.yaml)
[![version](https://img.shields.io/pypi/v/probabilistic-reconciliation.svg?colorB=black&style=flat)](https://pypi.org/project/probabilistic-reconciliation/)
> Probabilistic reconciliation of time series forecasts
## About
Reconcile implements probabilistic time series forecast reconciliation methods introduced in
1) Zambon, Lorenzo, Dario Azzimonti, and Giorgio Corani. ["Probabilistic reconciliation of forecasts via importance sampling."](https://doi.org/10.48550/arXiv.2210.02286) arXiv preprint arXiv:2210.02286 (2022).
2) Panagiotelis, Anastasios, et al. ["Probabilistic forecast reconciliation: Properties, evaluation and score optimisation."](https://doi.org/10.1016/j.ejor.2022.07.040) European Journal of Operational Research (2022).
The package implements methods to compute summing/aggregation matrices for grouped and hierarchical time series and reconciliation methods for probabilistic forecasts based on sampling and optimization,
and in the near future also some recent forecasting methods, such as proposed in [Benavoli, *et al.* (2021)](https://doi.org/10.1007/978-3-030-91445-5_2) or [Corani *et al.*, (2020)](https://arxiv.org/abs/2009.08102) via [GPJax](https://github.com/JaxGaussianProcesses/GPJax).
## Examples
An example timeseries forecast application using GPs can be found in `examples/reconciliation.py` and a **case study on probabilistic forecast reconciliation of stock index data** can be found [here](https://dirmeier.github.io/etudes/probabilistic_reconciliation.html).
## Installation
Make sure to have a working `JAX` installation. Depending whether you want to use CPU/GPU/TPU,
please follow [these instructions](https://github.com/google/jax#installation).
To install the package from PyPI, call:
```bash
pip install probabilistic-reconciliation
```
To install the latest GitHub <RELEASE>, just call the following on the
command line:
```bash
pip install git+https://github.com/dirmeier/reconcile@<RELEASE>
```
## Author
Simon Dirmeier <a href="mailto:sfyrbnd @ pm me">sfyrbnd @ pm me</a>
Raw data
{
"_id": null,
"home_page": "",
"name": "probabilistic-reconciliation",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "",
"keywords": "forecasting,hierarchical time series,probabilistic reconciliation,timeseries",
"author": "",
"author_email": "Simon Dirmeier <sfyrbnd@pm.me>",
"download_url": "https://files.pythonhosted.org/packages/69/63/af567a936ecf14e1b62c59d3d667f54f225ecb0b09347b226ed4abec6999/probabilistic_reconciliation-0.1.0.tar.gz",
"platform": null,
"description": "# reconcile\n\n[![status](http://www.repostatus.org/badges/latest/concept.svg)](http://www.repostatus.org/#concept)\n[![ci](https://github.com/dirmeier/reconcile/actions/workflows/ci.yaml/badge.svg)](https://github.com/dirmeier/reconcile/actions/workflows/ci.yaml)\n[![version](https://img.shields.io/pypi/v/probabilistic-reconciliation.svg?colorB=black&style=flat)](https://pypi.org/project/probabilistic-reconciliation/)\n\n> Probabilistic reconciliation of time series forecasts\n\n## About\n\nReconcile implements probabilistic time series forecast reconciliation methods introduced in\n\n1) Zambon, Lorenzo, Dario Azzimonti, and Giorgio Corani. [\"Probabilistic reconciliation of forecasts via importance sampling.\"](https://doi.org/10.48550/arXiv.2210.02286) arXiv preprint arXiv:2210.02286 (2022).\n2) Panagiotelis, Anastasios, et al. [\"Probabilistic forecast reconciliation: Properties, evaluation and score optimisation.\"](https://doi.org/10.1016/j.ejor.2022.07.040) European Journal of Operational Research (2022).\n\nThe package implements methods to compute summing/aggregation matrices for grouped and hierarchical time series and reconciliation methods for probabilistic forecasts based on sampling and optimization,\nand in the near future also some recent forecasting methods, such as proposed in [Benavoli, *et al.* (2021)](https://doi.org/10.1007/978-3-030-91445-5_2) or [Corani *et al.*, (2020)](https://arxiv.org/abs/2009.08102) via [GPJax](https://github.com/JaxGaussianProcesses/GPJax).\n\n## Examples\n\nAn example timeseries forecast application using GPs can be found in `examples/reconciliation.py` and a **case study on probabilistic forecast reconciliation of stock index data** can be found [here](https://dirmeier.github.io/etudes/probabilistic_reconciliation.html).\n\n## Installation\n\nMake sure to have a working `JAX` installation. Depending whether you want to use CPU/GPU/TPU,\nplease follow [these instructions](https://github.com/google/jax#installation).\n\nTo install the package from PyPI, call:\n\n```bash\npip install probabilistic-reconciliation\n```\n\nTo install the latest GitHub <RELEASE>, just call the following on the\ncommand line:\n\n```bash\npip install git+https://github.com/dirmeier/reconcile@<RELEASE>\n```\n\n## Author\n\nSimon Dirmeier <a href=\"mailto:sfyrbnd @ pm me\">sfyrbnd @ pm me</a>\n",
"bugtrack_url": null,
"license": "",
"summary": "Probabilistic reconciliation of time series forecasts",
"version": "0.1.0",
"project_urls": {
"homepage": "https://github.com/dirmeier/reconcile"
},
"split_keywords": [
"forecasting",
"hierarchical time series",
"probabilistic reconciliation",
"timeseries"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a7b3090a23cfcd87b2515c019c519994b33743cfef71bca75d8c5a7c42d791db",
"md5": "d144a0f5b7e446287ffa733883e76fe1",
"sha256": "d94269549cca4c7661e7d25279b0cd584403dc2385f1ae1d1377f9e5498bfac9"
},
"downloads": -1,
"filename": "probabilistic_reconciliation-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d144a0f5b7e446287ffa733883e76fe1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 16761,
"upload_time": "2023-10-21T20:42:46",
"upload_time_iso_8601": "2023-10-21T20:42:46.383850Z",
"url": "https://files.pythonhosted.org/packages/a7/b3/090a23cfcd87b2515c019c519994b33743cfef71bca75d8c5a7c42d791db/probabilistic_reconciliation-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6963af567a936ecf14e1b62c59d3d667f54f225ecb0b09347b226ed4abec6999",
"md5": "1e9a1f6da41f33bfd2b621efe6b15f18",
"sha256": "cb145a9336a4c888c54bd166ec7dc352a95cba8e0b73e4d57fb4c4685befa5de"
},
"downloads": -1,
"filename": "probabilistic_reconciliation-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "1e9a1f6da41f33bfd2b621efe6b15f18",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 15122,
"upload_time": "2023-10-21T20:42:47",
"upload_time_iso_8601": "2023-10-21T20:42:47.848449Z",
"url": "https://files.pythonhosted.org/packages/69/63/af567a936ecf14e1b62c59d3d667f54f225ecb0b09347b226ed4abec6999/probabilistic_reconciliation-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-10-21 20:42:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "dirmeier",
"github_project": "reconcile",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "probabilistic-reconciliation"
}