Skip to main content

A python package that implements an easy-to-use interface for random variables, statistical distributions, and their algebra.

Project description

distribution-algebra

A python package that implements an easy-to-use interface for random variables, statistical distributions, and their algebra.

This Python package is brought to you by Vaibhav Karve.

distribution-algebra recognizes Normal, Lognormal, Beta and Poisson distributions. The package implements an interface to easily construct user-defined Univariate distributions as well Vectorized distributions.

Additional features include:

  • A plot function for probability density/mass function plotting.
  • A draw function for drawing random samples of specified size from a given distribution.
  • Addition and multiplication operations defined directly on distributions:
    • For example, the sum of two Normal (Poisson) distributions is Normal (Poisson).
    • The product of two Lognormal distributions is Lognormal.
    • The sum of two arbitrary univariate distributions is expressed as a Vectorized distribution.

Example plot

This package is written in Python v3.10, and is publicly available under the GNU-GPL-v3.0 license.

Installation and usage

To get started on using this package,

  1. Install Python 3.10 or higher.

  2. python3.10 -m pip install distribution-algebra

  3. Use it in a python script (or interactive REPL)

    from distribution_algebra import Beta, Lognormal, Normal, Poisson
    
    x: Normal = Normal(mean=1.0, var=9.0)
    y: Normal = Normal(mean=1.0, var=16.0)
    
    assert x + y == Normal(mean=2.0, var=25.0)
    

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

distribution_algebra-0.1.26.tar.gz (27.6 kB view details)

Uploaded Source

Built Distribution

distribution_algebra-0.1.26-py3-none-any.whl (32.7 kB view details)

Uploaded Python 3

File details

Details for the file distribution_algebra-0.1.26.tar.gz.

File metadata

  • Download URL: distribution_algebra-0.1.26.tar.gz
  • Upload date:
  • Size: 27.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.4 Linux/6.9.3-76060903-generic

File hashes

Hashes for distribution_algebra-0.1.26.tar.gz
Algorithm Hash digest
SHA256 6da9a9d2a345f3ce02715e8d40523ebe4ed79a489485e14c4d2662cc7cc540bc
MD5 1747b352efae8dfaa1c477c8e64a514d
BLAKE2b-256 6b1fd244612128bb26eb8c01d6c9626df828ed0d3de8414724ffb0d1fdcef863

See more details on using hashes here.

File details

Details for the file distribution_algebra-0.1.26-py3-none-any.whl.

File metadata

File hashes

Hashes for distribution_algebra-0.1.26-py3-none-any.whl
Algorithm Hash digest
SHA256 26d7a34742fc3b8323131de23a27349a0d57287bf026735b3ebf6c0fa595e958
MD5 9f8783818c8adecb6318c994e648289f
BLAKE2b-256 e1e5f971066ef293f7ea8d3842762d602e15f3b69a482975c5b6e2980eab99cc

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