TLouf / respace

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ReSpace

PyPI Status Python Version License

Read the documentation at https://respace.readthedocs.io/ Tests Codecov

pre-commit Black Ruff

ReSpace is a Python package that allows you to keep track of the results of different computations along with the parameter values that generated them. You specify their names, the function that generates them, the name and default values of the parameters they depend on and you're good to go: no more trying to remember what parameters this value was computed for, building dictionaries of dictionaries (of dictionaries) to store them, or generally worrying about these things.

Features

  • Compute and store some result, indexing it based on the values of the parameters it was computed for.
  • Compute results that depend on others reliably and easily.
  • Retrieve a previously computed result for a set of parameters.
  • Add new parameters seemlessly.
  • Handle parameter defaults.
  • Save your results at different paths depending on the set of parameters they were computed for, with little to no effort.
  • Track how long each computation takes to identify bottlenecks in your pipeline.

Installation

You can install the latest release of ReSpace via pip from PyPI:

$ pip install respace

Or, if you want the latest development version from GitHub with git:

$ pip install git+https://github.com/TLouf/respace

ReSpace requires Python 3.8+ and depends on the xarray library.

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

License

Distributed under the terms of the MIT license, ReSpace is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Credits

This project was generated from a fork of @cjolowicz's Hypermodern Python Cookiecutter template.

About

License:MIT License


Languages

Language:Python 100.0%