Statistics library

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Thu Oct 23 16:41:30 PDT 2008


dsimcha wrote:
> Since there's really no good comprehensive statistics library for D (Tango has
> a little bit, the beginnings of a few are on dsource, but nothing much), Ive
> been rolling my own statistics functions as necessary.  Almost by accident, it
> seems like I've built up the beginnings of a decent statistics library.  I'm
> debating whether it might be interesting enough to people to be worth
> releasing, and whether enough community help would be available to really make
> it production quality, or to merge it with other people's efforts in this
> area.  The following functionality is currently available:
> 
> Correlation (Pearson, Spearman rho, Kendall tau).   Note that the     Kendall
> tau correlation is a very efficient O(N log N) version.
> 
> Mean, standard deviation, variance, kurtosis, percent variance for arrays of
> numeric values.
> 
> Shannon entropy, mutual information.
> 
> Kolmogorov-Smirnov tests
> 
> Binomial, hypergeometric, normal, Poisson, Kolmogorov CDFs, hypergeometric,
> Poisson, binomial PDFs.
> 
> Inverse normal distribution, and normally distributed random number generation.
> 
> A struct to generate all possible permutations of a sequence.
> 
> 
> On the other hand, I'm a scientist, not a full-time programmer, and although I
> can write working code, I have no clue what it takes to get code up to the
> gold standard of "production."  Also, this library is very D2-dependent, and I
> have no interest in back-porting it.  Of course if by some chance someone else
> wanted to back-port it, they'd be more than welcome.
> 
> Most of the code is covered somehow or another by unit tests, although I
> cheated a lot by having some unit tests depend on multiple functions.
> 
> Is there any interest in this from others in the D community?  Do other people
> think that D would benefit from having a decent statistics library?  Other
> comments?

If the community is interested, I'd be glad to take over your code and 
put it in Phobos.

Andrei


More information about the Digitalmars-d-announce mailing list