org.apache.commons.math.distribution
public class BinomialDistributionImpl extends AbstractIntegerDistribution implements BinomialDistribution, Serializable
BinomialDistribution
.Modifier and Type | Field and Description |
---|---|
private int |
numberOfTrials
The number of trials.
|
private double |
probabilityOfSuccess
The probability of success.
|
private static long |
serialVersionUID
Serializable version identifier
|
randomData
Constructor and Description |
---|
BinomialDistributionImpl(int trials,
double p)
Create a binomial distribution with the given number of trials and
probability of success.
|
Modifier and Type | Method and Description |
---|---|
double |
cumulativeProbability(int x)
For this distribution, X, this method returns P(X ≤ x).
|
protected int |
getDomainLowerBound(double p)
Access the domain value lower bound, based on
p , used to
bracket a PDF root. |
protected int |
getDomainUpperBound(double p)
Access the domain value upper bound, based on
p , used to
bracket a PDF root. |
int |
getNumberOfTrials()
Access the number of trials for this distribution.
|
double |
getNumericalMean()
Returns the mean.
|
double |
getNumericalVariance()
Returns the variance.
|
double |
getProbabilityOfSuccess()
Access the probability of success for this distribution.
|
int |
getSupportLowerBound()
Returns the lower bound of the support for the distribution.
|
int |
getSupportUpperBound()
Returns the upper bound of the support for the distribution.
|
int |
inverseCumulativeProbability(double p)
For this distribution, X, this method returns the largest x, such that
P(X ≤ x) ≤
p . |
double |
probability(int x)
For this distribution, X, this method returns P(X = x).
|
void |
setNumberOfTrials(int trials)
Deprecated.
as of 2.1 (class will become immutable in 3.0)
|
private void |
setNumberOfTrialsInternal(int trials)
Change the number of trials for this distribution.
|
void |
setProbabilityOfSuccess(double p)
Deprecated.
as of 2.1 (class will become immutable in 3.0)
|
private void |
setProbabilityOfSuccessInternal(double p)
Change the probability of success for this distribution.
|
cumulativeProbability, cumulativeProbability, cumulativeProbability, isSupportLowerBoundInclusive, isSupportUpperBoundInclusive, probability, reseedRandomGenerator, sample, sample
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
cumulativeProbability
probability
cumulativeProbability, cumulativeProbability
private static final long serialVersionUID
private int numberOfTrials
private double probabilityOfSuccess
public BinomialDistributionImpl(int trials, double p)
trials
- the number of trials.p
- the probability of success.public int getNumberOfTrials()
getNumberOfTrials
in interface BinomialDistribution
public double getProbabilityOfSuccess()
getProbabilityOfSuccess
in interface BinomialDistribution
@Deprecated public void setNumberOfTrials(int trials)
setNumberOfTrials
in interface BinomialDistribution
trials
- the new number of trials.IllegalArgumentException
- if trials
is not a valid
number of trials.private void setNumberOfTrialsInternal(int trials)
trials
- the new number of trials.IllegalArgumentException
- if trials
is not a valid
number of trials.@Deprecated public void setProbabilityOfSuccess(double p)
setProbabilityOfSuccess
in interface BinomialDistribution
p
- the new probability of success.IllegalArgumentException
- if p
is not a valid
probability.private void setProbabilityOfSuccessInternal(double p)
p
- the new probability of success.IllegalArgumentException
- if p
is not a valid
probability.protected int getDomainLowerBound(double p)
p
, used to
bracket a PDF root.getDomainLowerBound
in class AbstractIntegerDistribution
p
- the desired probability for the critical valuep
protected int getDomainUpperBound(double p)
p
, used to
bracket a PDF root.getDomainUpperBound
in class AbstractIntegerDistribution
p
- the desired probability for the critical valuep
public double cumulativeProbability(int x) throws MathException
cumulativeProbability
in interface IntegerDistribution
cumulativeProbability
in class AbstractIntegerDistribution
x
- the value at which the PDF is evaluated.MathException
- if the cumulative probability can not be computed
due to convergence or other numerical errors.public double probability(int x)
probability
in interface IntegerDistribution
x
- the value at which the PMF is evaluated.public int inverseCumulativeProbability(double p) throws MathException
p
.
Returns -1
for p=0 and Integer.MAX_VALUE
for
p=1.
inverseCumulativeProbability
in interface IntegerDistribution
inverseCumulativeProbability
in class AbstractIntegerDistribution
p
- the desired probabilityMathException
- if the inverse cumulative probability can not be
computed due to convergence or other numerical errors.IllegalArgumentException
- if p < 0 or p > 1public int getSupportLowerBound()
public int getSupportUpperBound()
public double getNumericalMean()
n
number of trials and
probability parameter p
, the mean is
n * p
public double getNumericalVariance()
n
number of trials and
probability parameter p
, the variance is
n * p * (1 - p)
Copyright (c) 2003-2013 Apache Software Foundation