Probability Distributions for Python.
Project description
Probability Distributions for Python
The Statistical Void
Stats can get tricky in the transition from plotting fun graphs to advanced algebraic equations. A classic example is the given sum:
1.0e14 + 1.0 - 1.0e14
The actual result is 1.0
but in double precision, this will result in 0.0
.
While in this example the failure is quite obvious, it can get a lot trickier
than that. Instances like these hinder the community from exploring the
inferential potential of complex entities.
p=Gaussian(a,b)
q=Gaussian(x,y)
p+q
This snippet would be close to useless as python addition doesn't isn't attributed for
higher-level declarables such as Gaussian variables. probplotlib provides simple solutions
for probability distributions; posing a highly-optimized alternative to numpy
and math
,
in a niche that is scarce in options.
Usage
probplotlib has the following operative methods:
-
+
: uses Dunder Methods for facilitating dist-additions. -
calculate_mean()
: returns the mean of a distribution.
gaussianex = Gaussian()
calculate_mean(gaussianx)
calculate_stdev()
: returns the standard deviation of a distribution.
binomialex = Binomial()
calculate_stdev(binomialex)
read_dataset()
: reads an external .txt dataset directly as a distribution.
gaussianex.read_dataset('values.txt')
binomialex.read_dataset('values.txt')
params()
: retrieves the identity parameters of an imported dataset.
gaussianex.params()
binomialex.params()
pdf()
: returns the probability density function at a given point.
pdf(gaussianex, 2)
functions unique to Gaussian Distributions:
plot_histogram()
: uses matplotlib to display a histogram of the Gaussian Distribution.
gaussianex.plot_histogram()
plot_histogram_pdf()
: uses matplotlib to display a co-relative plot along with the Gaussian probability density function.
gaussianex.plot_histogram_pdf()
functions unique to Binomial Distributions:
plot_bar()
: uses matplotlib to display a bar graph of the Binomial Distribution.
binomialex.plot_bar()
plot_bar_pdf()
: uses matplotlib to display a co-relative plot along with the Binomial probability density function.
binomialex.plot_bar_pdf()
Data Visualization
probplotlib therefore allows you to analyze raw numerical data graphically in minimial lines of code. The example below makes for better understanding.
a bag of numbers in a .txt
file corresponds to the following plots:
histogram plot:
bar plot:
histogram plot with pdf:
References
Stanford Archives: CS109- The Normal(Gaussian) Distribution
A Practical Overview on Probability Distributions: Andrea Viti, Alberto Terzi, Luca Bertolaccini
Awesome Scientific Computing: Nico Schlömer, GitHub Repository
math.statistics: Python 3.10 Source Code
Dependencies
probplotlib depends on the matplotlib
library on top of your regular python installation.
pip install matplotlib
or
conda install matplotlib
Installation
probplotlib is available on the Python Package Index. You can install it directly using pip.
pip install probplotlib
Testing
To run the tests, simply check to this directory and run the code below.
python -m unittest test_probplotlib
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for probplotlib-1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbb73b65954eef177d7160fba26a2f896922c62e1420f522783d074ad483d4db |
|
MD5 | 9dc9231987e889e8194e794d1b2c460f |
|
BLAKE2b-256 | 3dc373660937e87ac7635a4ab05a9050089a68e6d7d3ea41a72395f4cf4b658c |