public interface DiscreteDistribution
| Modifier and Type | Interface and Description |
|---|---|
static interface |
DiscreteDistribution.Sampler
Distribution sampling functionality.
|
| Modifier and Type | Method and Description |
|---|---|
DiscreteDistribution.Sampler |
createSampler(UniformRandomProvider rng)
Creates a sampler.
|
double |
cumulativeProbability(int x)
For a random variable
X whose values are distributed according
to this distribution, this method returns P(X <= x). |
double |
getMean()
Gets the mean of this distribution.
|
int |
getSupportLowerBound()
Gets the lower bound of the support.
|
int |
getSupportUpperBound()
Gets the upper bound of the support.
|
double |
getVariance()
Gets the variance of this distribution.
|
int |
inverseCumulativeProbability(double p)
Computes the quantile function of this distribution.
|
default int |
inverseSurvivalProbability(double p)
Computes the inverse survival probability function of this distribution.
|
default double |
logProbability(int x)
For a random variable
X whose values are distributed according
to this distribution, this method returns log(P(X = x)), where
log is the natural logarithm. |
double |
probability(int x)
For a random variable
X whose values are distributed according
to this distribution, this method returns P(X = x). |
default double |
probability(int x0,
int x1)
For a random variable
X whose values are distributed according
to this distribution, this method returns P(x0 < X <= x1). |
default double |
survivalProbability(int x)
For a random variable
X whose values are distributed according
to this distribution, this method returns P(X > x). |
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 - Point at which the PMF is evaluated.x.default double probability(int x0, int x1)
X whose values are distributed according
to this distribution, this method returns P(x0 < X <= x1).
The default implementation uses the identity
P(x0 < X <= x1) = P(X <= x1) - P(X <= x0)
Special cases:
0.0 if x0 == x1;
probability(x1) if x0 + 1 == x1;
x0 - Lower bound (exclusive).x1 - Upper bound (inclusive).x0 and x1, excluding the lower
and including the upper endpoint.IllegalArgumentException - if x0 > x1.default 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.x - Point at which the PMF is evaluated.x.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 - Point at which the CDF is evaluated.x.default double survivalProbability(int x)
X whose values are distributed according
to this distribution, this method returns P(X > x).
In other words, this method represents the complementary cumulative
distribution function.
By default, this is defined as 1 - cumulativeProbability(x), but
the specific implementation may be more accurate.
x - Point at which the survival function is evaluated.x.int inverseCumulativeProbability(double p)
X distributed according to this distribution,
the returned value is:
\[ x = \begin{cases} \inf \{ x \in \mathbb Z : P(X \le x) \ge p\} & \text{for } 0 \lt p \le 1 \\ \inf \{ x \in \mathbb Z : P(X \le x) \gt 0 \} & \text{for } p = 0 \end{cases} \]
If the result exceeds the range of the data type int,
then Integer.MIN_VALUE or Integer.MAX_VALUE is returned.
In this case the result of cumulativeProbability(x)
called using the returned p-quantile may not compute the original p.
p - Cumulative probability.p-quantile of this distribution
(largest 0-quantile for p = 0).IllegalArgumentException - if p < 0 or p > 1.default int inverseSurvivalProbability(double p)
X distributed according to this distribution,
the returned value is:
\[ x = \begin{cases} \inf \{ x \in \mathbb Z : P(X \ge x) \le p\} & \text{for } 0 \le p \lt 1 \\ \inf \{ x \in \mathbb Z : P(X \ge x) \lt 1 \} & \text{for } p = 1 \end{cases} \]
If the result exceeds the range of the data type int,
then Integer.MIN_VALUE or Integer.MAX_VALUE is returned.
In this case the result of survivalProbability(x)
called using the returned (1-p)-quantile may not compute the original p.
By default, this is defined as inverseCumulativeProbability(1 - p), but
the specific implementation may be more accurate.
p - Cumulative probability.(1-p)-quantile of this distribution
(largest 0-quantile for p = 1).IllegalArgumentException - if p < 0 or p > 1.double getMean()
double getVariance()
int getSupportLowerBound()
inverseCumulativeProbability(0), i.e.
\( \inf \{ x \in \mathbb Z : P(X \le x) \gt 0 \} \).
By convention, Integer.MIN_VALUE should be substituted
for negative infinity.int getSupportUpperBound()
inverseCumulativeProbability(1), i.e.
\( \inf \{ x \in \mathbb Z : P(X \le x) = 1 \} \).
By convention, Integer.MAX_VALUE should be substituted
for positive infinity.DiscreteDistribution.Sampler createSampler(UniformRandomProvider rng)
rng - Generator of uniformly distributed numbers.Copyright © 2018–2022 The Apache Software Foundation. All rights reserved.