stdlib-js / google-summer-of-code

Google Summer of Code resources.
https://github.com/stdlib-js/stdlib
26 stars 7 forks source link

[Idea]: implement a broader range of statistical distributions #2

Open kgryte opened 1 year ago

kgryte commented 1 year ago

Idea

The goal of this idea is to implement all distributions found in SciPy stats. Distribution support will entail implementing APIs for computing PDFs, CDFs, quantiles, and other distribution properties. Additionally, stdlib should support APIs for drawing random variates from any implemented distributions.

Expected Outcomes

stdlib users will be able to construct, and compute various properties of, every statistical distribution present in SciPy in JavaScript.

Involved Software

No runtime dependencies should be necessary. SciPy will be necessary in order to provide reference test results.

Prerequisite Knowledge

JavaScript, Node.js. Familiarity with C/C++/Fortran would help.

Difficulty

Intermediate. Difficulties may arise for distributions whose properties and moments have complicated formulations. Developing JavaScript implementations will likely require consulting C/C++ and possibly Fortran code.

Project Length

350 hours.

kgryte commented 8 months ago

For the set of distributions which have already been added to stdlib, see https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/stats/base/dists.

kgryte commented 8 months ago

And for APIs for generating random variates from those distributions, see https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/random/base.