Skip to main content

Utilities for the python package 'param'

Project description

pydrobert-param

Documentation Status Build status License

Utilities for the python package param.

While param is a great tool for keeping track of parameters, currently serialization is restricted to pickling and unpickling objects. pydrobert-param takes the stance that parameter (de)serialization has an intuitive and obvious representation in most cases. The developer can modify how pydrobert-param (de)serializes param.Parameterized instances according to her needs.

A teaser:

import param
import pydrobert.param.serialization as serial

class Foo(param.Parameterized):
    my_int = param.Integer(10)

first, second = Foo(), Foo()
first.my_int = 30
serial.serialize_to_json('foo.json', first)
serial.deserialize_from_json('foo.json', second)
assert first.my_int == second.my_int

While the primary purpose of pydrobert-param is for parameter (de)serialization, there is also code in pydrobert.param.optuna for hyperparameter optimization via Optuna. Check the documentation for more complicated examples of serialization, as well as for hyperparameter optimization.

This is student-driven code, so don't expect a stable API. I'll try to use semantic versioning, but the best way to keep functionality stable is by pinning the version in the requirements or by forking.

Documentation

Installation

pydrobert-param is available via both PyPI and Conda.

conda install -c sdrobert pydrobert-param
pip install pydrobert-param
pip install git+https://github.com/sdrobert/pydrobert-param # bleeding edge

There are also optional dependencies on PyPI:

pip install 'pydrobert-param[yaml]'    # installs ruamel.yaml YAML backend
pip install 'pydrobert-param[optuna]'  # installs optuna
pip install 'pydrobert-param[types]'   # installs numpy and pandas
                                       # (to handle all types)
pip install 'pydrobert-param[all]'     # all of the above

Licensing and How to Cite

Please see the pydrobert page for more details.

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

pydrobert-param-0.4.1.tar.gz (69.8 kB view details)

Uploaded Source

Built Distribution

pydrobert_param-0.4.1-py3-none-any.whl (50.6 kB view details)

Uploaded Python 3

File details

Details for the file pydrobert-param-0.4.1.tar.gz.

File metadata

  • Download URL: pydrobert-param-0.4.1.tar.gz
  • Upload date:
  • Size: 69.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.13

File hashes

Hashes for pydrobert-param-0.4.1.tar.gz
Algorithm Hash digest
SHA256 945578c31dd46a39cfbc8aa5920679ba947896d89d69694b748f8e496cacc1ee
MD5 0c8e74c070384dab8a96ec6842fc1352
BLAKE2b-256 4cb0228d28877146ad6c5bdce25bd07ff4a2e5d997a1354b1d45b522c0118a47

See more details on using hashes here.

File details

Details for the file pydrobert_param-0.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for pydrobert_param-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ea1181761b97b230a2f8fa7a4f7001f2f99667f774e3e61878a92c5c165175ec
MD5 d54eede454bd3c546e9225689bbfd98a
BLAKE2b-256 1e9a4eae775bbbde7c0e6487d14292efef29de0dedccac9b8be864b1fe6911ff

See more details on using hashes here.

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