public class EnumeratedIntegerDistribution extends AbstractIntegerDistribution
Implementation of an integer-valued EnumeratedDistribution.
Values with zero-probability are allowed but they do not extend the
 support.
 Duplicate values are allowed. Probabilities of duplicate values are combined
 when computing cumulative probabilities and statistics.
| Modifier and Type | Field and Description | 
|---|---|
| protected EnumeratedDistribution<Integer> | innerDistributionEnumeratedDistributioninstance (using theIntegerwrapper)
 used to generate the pmf. | 
random, randomData| Constructor and Description | 
|---|
| EnumeratedIntegerDistribution(int[] data)Create a discrete integer-valued distribution from the input data. | 
| EnumeratedIntegerDistribution(int[] singletons,
                             double[] probabilities)Create a discrete distribution using the given probability mass function
 definition. | 
| EnumeratedIntegerDistribution(RandomGenerator rng,
                             int[] data)Create a discrete integer-valued distribution from the input data. | 
| EnumeratedIntegerDistribution(RandomGenerator rng,
                             int[] singletons,
                             double[] probabilities)Create a discrete distribution using the given random number generator
 and probability mass function definition. | 
| Modifier and Type | Method and Description | 
|---|---|
| double | cumulativeProbability(int x)For a random variable  Xwhose values are distributed according
 to this distribution, this method returnsP(X <= x). | 
| 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 | 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 | probability(int x)For a random variable  Xwhose values are distributed according
 to this distribution, this method returnsP(X = x). | 
| int | sample()Generate a random value sampled from this distribution. | 
cumulativeProbability, inverseCumulativeProbability, logProbability, reseedRandomGenerator, sample, solveInverseCumulativeProbabilityprotected final EnumeratedDistribution<Integer> innerDistribution
EnumeratedDistribution instance (using the Integer wrapper)
 used to generate the pmf.public EnumeratedIntegerDistribution(int[] singletons,
                             double[] probabilities)
                              throws DimensionMismatchException,
                                     NotPositiveException,
                                     MathArithmeticException,
                                     NotFiniteNumberException,
                                     NotANumberException
 Note: this constructor will implicitly create an instance of
 Well19937c as random generator to be used for sampling only (see
 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.
singletons - array of random variable values.probabilities - array of probabilities.DimensionMismatchException - if
 singletons.length != probabilities.lengthNotPositiveException - if any of the probabilities are negative.NotFiniteNumberException - if any of the probabilities are infinite.NotANumberException - if any of the probabilities are NaN.MathArithmeticException - all of the probabilities are 0.public EnumeratedIntegerDistribution(RandomGenerator rng, int[] singletons, double[] probabilities) throws DimensionMismatchException, NotPositiveException, MathArithmeticException, NotFiniteNumberException, NotANumberException
rng - random number generator.singletons - array of random variable values.probabilities - array of probabilities.DimensionMismatchException - if
 singletons.length != probabilities.lengthNotPositiveException - if any of the probabilities are negative.NotFiniteNumberException - if any of the probabilities are infinite.NotANumberException - if any of the probabilities are NaN.MathArithmeticException - all of the probabilities are 0.public EnumeratedIntegerDistribution(RandomGenerator rng, int[] data)
rng - random number generator used for samplingdata - input datasetpublic EnumeratedIntegerDistribution(int[] data)
data - input datasetpublic 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 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 double getNumericalMean()
sum(singletons[i] * probabilities[i])public double getNumericalVariance()
sum((singletons[i] - mean) ^ 2 * probabilities[i])public int getSupportLowerBound()
inverseCumulativeProbability(0). In other words, this
 method must return
 inf {x in Z | P(X <= x) > 0}.
public int getSupportUpperBound()
inverseCumulativeProbability(1). In other words, this
 method must return
 inf {x in R | P(X <= x) = 1}.
public boolean isSupportConnected()
truepublic int sample()
sample in interface IntegerDistributionsample in class AbstractIntegerDistributionCopyright © 2003–2016 The Apache Software Foundation. All rights reserved.