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.20.tar.gz (27.3 kB view hashes)

Uploaded Source

Built Distribution

distribution_algebra-0.1.20-py3-none-any.whl (32.4 kB view hashes)

Uploaded 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