Skip to main content

Utility to efficiently explore functions on their domains

Project description

Cartesian Explorer

https://img.shields.io/pypi/v/cartesian-explorer.svg https://github.com/danlkv/cartesian-explorer/workflows/Test/badge.svg Documentation Status

A handy tool to map functions over their domains.

docs/Screenshot%20from%202021-03-05%2022-05-32.png

Works:

  • Map over cartesian product of arguments: pass arrays of values for function argument

  • Built-in caching

  • Handy plotting utilities

  • Resolving dependencies between functions that require and provide variables

Usage

Map

from cartesian_explorer import Explorer

explorer = Explorer()

def my_function(x, y):
    return x+y
data = explorer.map(my_function, x=range(5), y=range(3))
print(data)
assert data.shape == (5, 3)
assert data[1, 2] == my_function(1, 2)

Cache

from cartesian_explorer import Explorer
explorer = Explorer()
mock = MagicMock()
my_function = mock.my_function
wrapped = explorer.cache_function(my_function)
wrapped(a=1, b=2)
wrapped(a=1, b=2)
my_function.assert_called_once_with(a=1, b=2)

TODO

  • [ ] Interpolation, extrapolation

  • [ ] Vectorized providers

  • [x] Plot distribution props along additional distribution var

History

0.1.12 (2020-09-29)

  • Row-level variables: now can visualize 4 dimensions

0.1.3 (2020-09-29)

  • Joblib disc caching and parallelism

  • Dependency graph visualization with networkx

  • Plot-level variables

0.0.1 (2020-09-23)

  • First release on PyPI.

Project details


Download files

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

Source Distribution

cartesian_explorer-0.1.13.tar.gz (119.5 kB view hashes)

Uploaded Source

Built Distribution

cartesian_explorer-0.1.13-py2.py3-none-any.whl (27.1 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page