Statistics.Sample.KernelDensity

statistics-0.13.3.0: A library of statistical types, data, and functions

Copyright | (c) 2011 Bryan O'Sullivan
License | BSD3
Maintainer | bos@serpentine.com
Stability | experimental
Portability | portable
Safe Haskell | None
Language | Haskell98

Statistics.Sample.KernelDensity

Contents

- Estimation functions
- References

Description

Kernel density estimation. This module provides a fast, robust, non-parametric way to estimate the probability density function of a sample.

This estimator does not use the commonly employed "Gaussian rule of thumb". As a result, it outperforms many plug-in methods on multimodal samples with widely separated modes.

Synopsis

- kde :: (Vector v CD, Vector v Double, Vector v Int) => Int -> v Double -> (v Double, v Double)
- kde_ :: (Vector v CD, Vector v Double, Vector v Int) => Int -> Double -> Double -> v Double -> (v Double, v Double)

# Estimation functions

kde #

Arguments

:: (Vector v CD, Vector v Double, Vector v Int) |
=> Int | The number of mesh points to use in the uniform discretization of the interval `(min,max)`. If this value is not a power of two, then it is rounded up to the next power of two.
-> v Double |
-> (v Double, v Double) |

Gaussian kernel density estimator for one-dimensional data, using the method of Botev et al.

The result is a pair of vectors, containing:

- The coordinates of each mesh point. The mesh interval is chosen to be 20% larger than the range of the sample. (To specify the mesh interval, use `kde_`.)
- Density estimates at each mesh point.

kde_ #

Arguments

:: (Vector v CD, Vector v Double, Vector v Int) |
=> Int | The number of mesh points to use in the uniform discretization of the interval `(min,max)`. If this value is not a power of two, then it is rounded up to the next power of two.
-> Double | Lower bound (`min`) of the mesh range.
-> Double | Upper bound (`max`) of the mesh range.
-> v Double |
-> (v Double, v Double) |

Gaussian kernel density estimator for one-dimensional data, using the method of Botev et al.

The result is a pair of vectors, containing:

- The coordinates of each mesh point.
- Density estimates at each mesh point.

# References

Botev. Z.I., Grotowski J.F., Kroese D.P. (2010). Kernel density estimation via diffusion. Annals of Statistics 38(5):2916–2957. http://arxiv.org/pdf/1011.2602