hot9cups/probdists

Future work

hot9cups opened this issue · 8 comments

The library is growing at a good pace. It started with support for merely 2 distributions, and now it's on the path to support most of the major distributions I could think of.

What else do you think would a library on probability distribution ought to include?
Currently, it calculates the mean, standard deviation, adds random variables of two distributions(not for all distributions, eg: exponential), plots the pdf of the distributions and does all of this on user's input data.

Couple of things that are pending include:

  1. Creation of a proper documentation website, and its hosting(preferably using github.io)
  2. Using seaborn and improving the graph quality

There's another issue I thought of yesterday, which could be included - Inverting the probability distribution.
Ie, solving questions like "Given I have a Gaussian Distribution of x mean and y std, for what value of t is P(X < T) = z%"

I reckon that's easily solveable using Newton's method, because we're simple required to find the value of t such that
P(X<t) - z = 0
Using Newton's method, this simply boils down to:
1)Initialising t to a random value
2)Iterating till we have an accuracy we desire:
t -= (cdf(t) - z)/pdf(t)
we could stop, for example, when |dt| < 0.0001, where dt = (cdf(t)-y)/pdf(t)

So these are the ideas I have at the moment, but collective wisdom is always better.
If you think there are other features that could be included in the library, do comment your thoughts below :)

I would like to create the documentation website for the probdists.
documentation will be visible on https://probdists.readthedocs.io/ as well as https://probdists.github.io.

@hot9cups

@codeperfectplus Great, could you please comment here so I could assign it to you? :)

@hot9cups, I think we can add support for a few more distributions. We already have ~10 most common ones but we may have missed a few. Can you look into Student t-distribution, Weibull, and Kumaraswamy distributions.

If you affirm then I can open an issue.

@saeyma that sounds great, also would you be interested in connecting over discord? I'd like to discuss a couple of things about the repo there. My tag is hot9cups#3125

Hey @hot9cups, did you look into this?

@saeyma Yes, by all means go ahead. As long as a distribution has a wikipedia page on it(which is to say it's 'known') and has compute-friendly formulae, we can keep adding 'em here.

Hey, may I contribute something too? It's been a long time since I contributed to his repo :)

@basil08 welcome back, great to see you again! By all means, go ahead :)