Skip to content

HypergeometricDistribution ​

The hypergeometric distribution: nn draws without replacement from a population of ntotalntotal with nsuccnsucc successes.

HypergeometricDistribution(n, nsucc, ntotal)an inert distribution object — carries n,nsucc,ntotaln, nsucc, ntotal, unevaluated.
Typed signatures
TypePackageApplies
(real<0..>, real<0..>, real<0..>) -> distributionstatisticsalways

Domain: Statistics

Details
  • PDF(k)=(nsucck)(ntotal−nsuccn−k)/(ntotaln)PDF(k) = \binom{nsucc}{k}\binom{ntotal-nsucc}{n-k} \big/ \binom{ntotal}{n}, exact.
  • CDF(x)=∑k=0⌊x⌋PDF(k)CDF(x) = \sum_{k=0}^{\lfloor x\rfloor} PDF(k), an exact FINITE sum (not a closed form) — only answers when ⌊x⌋\lfloor x\rfloor resolves to a concrete integer, otherwise stays unevaluated rather than build an unbounded symbolic Sum.
  • Mean=n⋅nsucc/ntotalMean = n \cdot nsucc/ntotal, Variance=nnsuccntotal(1−nsuccntotal)ntotal−nntotal−1Variance = n\dfrac{nsucc}{ntotal}\left(1-\dfrac{nsucc}{ntotal}\right)\dfrac{ntotal-n}{ntotal-1}, both exact.
  • RandomVariate samples via sequential without-replacement Bernoulli draws (exact, not an approximation).

Examples

Basic #

Cross-checked against wolframscript's N[PDF[HypergeometricDistribution[20, 50, 100], 10]]

live ↗
InPDF⁡(HypergeometricDistribution(20,50,100),10)\operatorname{PDF}(\mathrm{HypergeometricDistribution}(20, 50, 100), 10)Out10 272 278 17052 177 653 441\frac{10\,272\,278\,170}{52\,177\,653\,441}
live ↗
InCDF⁡(HypergeometricDistribution(3,5,10),2)\operatorname{CDF}(\mathrm{HypergeometricDistribution}(3, 5, 10), 2)Out1112\frac{11}{12}
live ↗
Inmean(HypergeometricDistribution(20,50,100))\mathrm{mean}(\mathrm{HypergeometricDistribution}(20, 50, 100))Out1010
live ↗
InVariance(HypergeometricDistribution(20,50,100))\mathrm{Variance}(\mathrm{HypergeometricDistribution}(20, 50, 100))Out40099\frac{400}{99}
About
Examples4

See also: BinomialDistribution, PDF