# statistics: A library of statistical types, data, and functions

This library provides a number of common functions and types useful in statistics. We focus on high performance, numerical robustness, and use of good algorithms. Where possible, we provide references to the statistical literature.

The library's facilities can be divided into four broad categories:

Working with widely used discrete and continuous probability distributions. (There are dozens of exotic distributions in use; we focus on the most common.)

Computing with sample data: quantile estimation, kernel density estimation, histograms, bootstrap methods, significance testing, and autocorrelation analysis.

Random variate generation under several different distributions.

Common statistical tests for significant differences between samples.

Changes in 0.10.1.0

Kolmogorov-Smirnov nonparametric test added.

Pearson's chi squared test added.

Type class for generating random variates for given distribution is added.

Modules

`Statistics.Math`

and`Statistics.Constants`

are moved to the`math-functions`

package. They are still available but marked as deprecated.

Changed in 0.10.0.1

`dct`

and`idct`

now have type`Vector Double -> Vector Double`

Changes in 0.10.0.0:

The type classes

`Mean`

and`Variance`

are split in two. This is required for distributions which do not have finite variance or mean.The

`S.Sample.KernelDensity`

module has been renamed, and completely rewritten to be much more robust. The older module oversmoothed multi-modal data. (The older module is still available under the name`S.Sample.KernelDensity.Simple`

).Histogram computation is added, in

`S.Sample.Histogram`

.Forward and inverse discrete Fourier and cosine transforms are added, in

`S.Transform`

.Root finding is added, in

`S.Math.RootFinding`

.The

`complCumulative`

function is added to the`Distribution`

class in order to accurately assess probalities P(X>x) which are used in one-tailed tests.A

`stdDev`

function is added to the`Variance`

class for distributions.The constructor

`S.Distribution.normalDistr`

now takes standard deviation instead of variance as its parameter.A bug in

`S.Quantile.weightedAvg`

is fixed. It produced a wrong answer if a sample contained only one element.Bugs in quantile estimations for chi-square and gamma distribution are fixed.

Integer overlow in

`mannWhitneyUCriticalValue`

is fixed. It produced incorrect critical values for moderately large samples. Something around 20 for 32-bit machines and 40 for 64-bit ones.A bug in

`mannWhitneyUSignificant`

is fixed. If either sample was larger than 20, it produced a completely incorrect answer.One- and two-tailed tests in

`S.Tests.NonParametric`

are selected with sum types instead of`Bool`

.Test results returned as enumeration instead of

`Bool`

.Performance improvements for Mann-Whitney U and Wilcoxon tests.

Module

`S.Tests.NonParamtric`

is split into`S.Tests.MannWhitneyU`

and`S.Tests.WilcoxonT`

`sortBy`

is added to`S.Function`

.Mean and variance for gamma distribution are fixed.

Much faster cumulative probablity functions for Poisson and hypergeometric distributions.

Better density functions for gamma and Poisson distributions.

Student-T, Fisher-Snedecor F-distributions and Cauchy-Lorentz distrbution are added.

The function

`S.Function.create`

is removed. Use`generateM`

from the`vector`

package instead.Function to perform approximate comparion of doubles is added to

`S.Function.Comparison`

Regularized incomplete beta function and its inverse are added to

`S.Function`

.

[Skip to Readme]

Versions | 0.1, 0.2, 0.2.1, 0.2.2, 0.3, 0.3.1, 0.3.2, 0.3.3, 0.3.4, 0.3.5, 0.3.6, 0.4.0, 0.4.1, 0.5.0.0, 0.5.1.0, 0.5.1.1, 0.5.1.2, 0.6.0.0, 0.6.0.1, 0.6.0.2, 0.7.0.0, 0.8.0.0, 0.8.0.1, 0.8.0.2, 0.8.0.3, 0.8.0.4, 0.8.0.5, 0.9.0.0, 0.10.0.0, 0.10.0.1, 0.10.1.0, 0.10.2.0, 0.10.3.0, 0.10.3.1, 0.10.4.0, 0.10.4.1, 0.10.5.0, 0.10.5.1, 0.10.5.2, 0.11.0.0, 0.11.0.1, 0.11.0.2, 0.11.0.3, 0.12.0.0, 0.13.1.0, 0.13.1.1, 0.13.2.0, 0.13.2.1, 0.13.2.2, 0.13.2.3, 0.13.3.0, 0.14.0.0, 0.14.0.1, 0.14.0.2 |
---|---|

Dependencies | base (<5), deepseq (>=1.1.0.2 && <1.4), erf, math-functions (>=0.1.1), monad-par (>=0.1.0.1), mwc-random (>=0.11.0.0), primitive (>=0.3), vector (>=0.7.1), vector-algorithms (>=0.4) [details] |

License | BSD-3-Clause |

Copyright | 2009, 2010, 2011 Bryan O'Sullivan |

Author | Bryan O'Sullivan <bos@serpentine.com> |

Maintainer | Bryan O'Sullivan <bos@serpentine.com> |

Revised | Revision 1 made by HerbertValerioRiedel at Mon Jan 5 20:58:15 UTC 2015 |

Category | Math, Statistics |

Home page | https://github.com/bos/statistics |

Bug tracker | https://github.com/bos/statistics/issues |

Source repo | head: git clone https://github.com/bos/statistics head: hg clone https://bitbucket.org/bos/statistics |

Uploaded | by BryanOSullivan at Fri Jan 13 22:18:55 UTC 2012 |

Distributions | Arch:0.14.0.2, Debian:0.13.2.3, Fedora:0.14.0.2, FreeBSD:0.13.2.3, LTSHaskell:0.14.0.2, NixOS:0.14.0.2, Stackage:0.14.0.2 |

Downloads | 57603 total (968 in the last 30 days) |

Rating | 2.0 (votes: 1) [estimated by rule of succession] |

Your Rating | |

Status | Docs uploaded by user Build status unknown [no reports yet] Hackage Matrix CI |

## Modules

[Index]

*Statistics*- Statistics.Autocorrelation
- Statistics.Constants
- Statistics.Distribution
- Statistics.Distribution.Binomial
- Statistics.Distribution.CauchyLorentz
- Statistics.Distribution.ChiSquared
- Statistics.Distribution.Exponential
- Statistics.Distribution.FDistribution
- Statistics.Distribution.Gamma
- Statistics.Distribution.Geometric
- Statistics.Distribution.Hypergeometric
- Statistics.Distribution.Normal
- Statistics.Distribution.Poisson
- Statistics.Distribution.StudentT
- Statistics.Distribution.Uniform

- Statistics.Function
- Statistics.Math
- Statistics.Quantile
- Statistics.Resampling
- Statistics.Sample
*Test*- Statistics.Transform
- Statistics.Types

## Downloads

- statistics-0.10.1.0.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.