public class HypergeometricDistribution extends AbstractIntegerDistribution
random, randomData| Constructor and Description | 
|---|
| HypergeometricDistribution(int populationSize,
                          int numberOfSuccesses,
                          int sampleSize)Construct a new hypergeometric distribution with the specified population
 size, number of successes in the population, and sample size. | 
| HypergeometricDistribution(RandomGenerator rng,
                          int populationSize,
                          int numberOfSuccesses,
                          int sampleSize)Creates a new hypergeometric distribution. | 
| Modifier and Type | Method and Description | 
|---|---|
| protected double | calculateNumericalVariance()Used by  getNumericalVariance(). | 
| double | cumulativeProbability(int x)For a random variable  Xwhose values are distributed according
 to this distribution, this method returnsP(X <= x). | 
| int | getNumberOfSuccesses()Access the number of successes. | 
| double | getNumericalMean()Use this method to get the numerical value of the mean of this
 distribution. | 
| double | getNumericalVariance()Use this method to get the numerical value of the variance of this
 distribution. | 
| int | getPopulationSize()Access the population size. | 
| int | getSampleSize()Access the sample size. | 
| int | getSupportLowerBound()Access the lower bound of the support. | 
| int | getSupportUpperBound()Access the upper bound of the support. | 
| boolean | isSupportConnected()Use this method to get information about whether the support is
 connected, i.e. | 
| double | logProbability(int x)For a random variable  Xwhose values are distributed according to
 this distribution, this method returnslog(P(X = x)), wherelogis the natural logarithm. | 
| double | probability(int x)For a random variable  Xwhose values are distributed according
 to this distribution, this method returnsP(X = x). | 
| double | upperCumulativeProbability(int x)For this distribution,  X, this method returnsP(X >= x). | 
cumulativeProbability, inverseCumulativeProbability, reseedRandomGenerator, sample, sample, solveInverseCumulativeProbabilitypublic HypergeometricDistribution(int populationSize,
                          int numberOfSuccesses,
                          int sampleSize)
                           throws NotPositiveException,
                                  NotStrictlyPositiveException,
                                  NumberIsTooLargeException
 Note: this constructor will implicitly create an instance of
 Well19937c as random generator to be used for sampling only (see
 AbstractIntegerDistribution.sample() and AbstractIntegerDistribution.sample(int)). In case no sampling is
 needed for the created distribution, it is advised to pass null
 as random generator via the appropriate constructors to avoid the
 additional initialisation overhead.
populationSize - Population size.numberOfSuccesses - Number of successes in the population.sampleSize - Sample size.NotPositiveException - if numberOfSuccesses < 0.NotStrictlyPositiveException - if populationSize <= 0.NumberIsTooLargeException - if numberOfSuccesses > populationSize,
 or sampleSize > populationSize.public HypergeometricDistribution(RandomGenerator rng, int populationSize, int numberOfSuccesses, int sampleSize) throws NotPositiveException, NotStrictlyPositiveException, NumberIsTooLargeException
rng - Random number generator.populationSize - Population size.numberOfSuccesses - Number of successes in the population.sampleSize - Sample size.NotPositiveException - if numberOfSuccesses < 0.NotStrictlyPositiveException - if populationSize <= 0.NumberIsTooLargeException - if numberOfSuccesses > populationSize,
 or sampleSize > populationSize.public double cumulativeProbability(int x)
X whose values are distributed according
 to this distribution, this method returns P(X <= x).  In other
 words, this method represents the (cumulative) distribution function
 (CDF) for this distribution.x - the point at which the CDF is evaluatedxpublic int getNumberOfSuccesses()
public int getPopulationSize()
public int getSampleSize()
public double probability(int x)
X whose values are distributed according
 to this distribution, this method returns P(X = x). In other
 words, this method represents the probability mass function (PMF)
 for the distribution.x - the point at which the PMF is evaluatedxpublic double logProbability(int x)
X whose values are distributed according to
 this distribution, this method returns log(P(X = x)), where
 log is the natural logarithm. In other words, this method
 represents the logarithm of the probability mass function (PMF) for the
 distribution. Note that due to the floating point precision and
 under/overflow issues, this method will for some distributions be more
 precise and faster than computing the logarithm of
 IntegerDistribution.probability(int).
 
 The default implementation simply computes the logarithm of probability(x).
logProbability in class AbstractIntegerDistributionx - the point at which the PMF is evaluatedxpublic double upperCumulativeProbability(int x)
X, this method returns P(X >= x).x - Value at which the CDF is evaluated.public double getNumericalMean()
N, number of successes m, and sample
 size n, the mean is n * m / N.Double.NaN if it is not definedpublic double getNumericalVariance()
N, number of successes m, and sample
 size n, the variance is
 [n * m * (N - n) * (N - m)] / [N^2 * (N - 1)].Double.POSITIVE_INFINITY or
 Double.NaN if it is not defined)protected double calculateNumericalVariance()
getNumericalVariance().public int getSupportLowerBound()
inverseCumulativeProbability(0). In other words, this
 method must return
 inf {x in Z | P(X <= x) > 0}.
N, number of successes m, and sample
 size n, the lower bound of the support is
 max(0, n + m - N).public int getSupportUpperBound()
inverseCumulativeProbability(1). In other words, this
 method must return
 inf {x in R | P(X <= x) = 1}.
m and sample size n, the upper
 bound of the support is min(m, n).public boolean isSupportConnected()
trueCopyright © 2003–2016 The Apache Software Foundation. All rights reserved.