hypergeometricCdf¶
Evaluates the hypergeometric distribution function.
Synopsis¶
hypergeometricCdf (k, n, m, l)
Required Arguments¶
- int
k
(Input) - Argument for which the hypergeometric distribution function is to be evaluated.
- int
n
(Input) - Sample size
n
must be greater than or equal tok
. - int
m
(Input) - Number of defectives in the lot.
- int
l
(Input) - Lot size
l
must be greater than or equal ton
andm
.
Return Value¶
The probability that k or fewer defectives occur in a sample of size n drawn from a lot of size l that contains m defectives.
Description¶
The function hypergeometricCdf
evaluates the distribution function of a
hypergeometric random variable with parameters n, l, and m. The
hypergeometric random variable x can be thought of as the number of items
of a given type in a random sample of size n that is drawn without
replacement from a population of size l containing m items of this type.
The probability function is
where \(i=\max(0,n-l+m)\).
If k is greater than or equal to i and less than or equal to
\(\min(n,m)\), hypergeometricCdf
sums the terms in this expression
for j going from i up to k. Otherwise, 0 or 1 is returned, as
appropriate.
To avoid rounding in the accumulation, hypergeometricCdf
performs the
summation differently, depending on whether k is greater than the mode of
the distribution, which is the greatest integer in \((m+1) (n+1)/(l+2)\).
Example¶
Suppose X is a hypergeometric random variable with \(n=100\), \(l=1000\), and \(m=70\). This example evaluates the distribution function at 7.
from __future__ import print_function
from numpy import *
from pyimsl.math.hypergeometricCdf import hypergeometricCdf
k = 7
l = 1000
m = 70
n = 100
p = hypergeometricCdf(k, n, m, l)
print("Pr(x <= 7) = %6.4f" % (p))
Output¶
Pr(x <= 7) = 0.5995
Informational Errors¶
IMSL_LESS_THAN_ZERO |
The input argument, k, is less than zero. |
IMSL_K_GREATER_THAN_N |
The input argument, k, is greater than the sample size. |
Fatal Errors¶
IMSL_LOT_SIZE_TOO_SMALL |
Lot size must be greater than or equal to n and m. |