Class BinomialTest
Exact test for the statistical significance of deviations from a theoretically expected distribution of observations into two categories.
 See Also:

Constructor Summary

Method Summary
Modifier and TypeMethodDescriptiondouble
binomialTest
(int numberOfTrials, int numberOfSuccesses, double probability, AlternativeHypothesis alternativeHypothesis) Returns the observed significance level, or pvalue, associated with a Binomial test.boolean
binomialTest
(int numberOfTrials, int numberOfSuccesses, double probability, AlternativeHypothesis alternativeHypothesis, double alpha) Returns whether the null hypothesis can be rejected with the given confidence level.

Constructor Details

BinomialTest
public BinomialTest()Empty constructor.This constructor is not strictly necessary, but it prevents spurious javadoc warnings with JDK 18 and later.
 Since:
 3.0


Method Details

binomialTest
public boolean binomialTest(int numberOfTrials, int numberOfSuccesses, double probability, AlternativeHypothesis alternativeHypothesis, double alpha) Returns whether the null hypothesis can be rejected with the given confidence level.Preconditions:
 Number of trials must be ≥ 0.
 Number of successes must be ≥ 0.
 Number of successes must be ≤ number of trials.
 Probability must be ≥ 0 and ≤ 1.
 Parameters:
numberOfTrials
 number of trials performednumberOfSuccesses
 number of successes observedprobability
 assumed probability of a single trial under the null hypothesisalternativeHypothesis
 type of hypothesis being evaluated (one or twosided)alpha
 significance level of the test Returns:
 true if the null hypothesis can be rejected with confidence
1  alpha
 Throws:
MathIllegalArgumentException
 ifnumberOfTrials
ornumberOfSuccesses
is negativeMathIllegalArgumentException
 ifprobability
is not between 0 and 1MathIllegalArgumentException
 ifnumberOfTrials
<numberOfSuccesses
or ifalternateHypothesis
is null. See Also:

binomialTest
public double binomialTest(int numberOfTrials, int numberOfSuccesses, double probability, AlternativeHypothesis alternativeHypothesis) Returns the observed significance level, or pvalue, associated with a Binomial test.The number returned is the smallest significance level at which one can reject the null hypothesis. The form of the hypothesis depends on
alternativeHypothesis
.The pValue represents the likelihood of getting a result at least as extreme as the sample, given the provided
probability
of success on a single trial. For singlesided tests, this value can be directly derived from the Binomial distribution. For the twosided test, the implementation works as follows: we start by looking at the most extreme cases (0 success and n success where n is the number of trials from the sample) and determine their likelihood. The lower value is added to the pValue (if both values are equal, both are added). Then we continue with the next extreme value, until we added the value for the actual observed sample.* Preconditions:
 Number of trials must be ≥ 0.
 Number of successes must be ≥ 0.
 Number of successes must be ≤ number of trials.
 Probability must be ≥ 0 and ≤ 1.
 Parameters:
numberOfTrials
 number of trials performednumberOfSuccesses
 number of successes observedprobability
 assumed probability of a single trial under the null hypothesisalternativeHypothesis
 type of hypothesis being evaluated (one or twosided) Returns:
 pvalue
 Throws:
MathIllegalArgumentException
 ifnumberOfTrials
ornumberOfSuccesses
is negativeMathIllegalArgumentException
 ifprobability
is not between 0 and 1MathIllegalArgumentException
 ifnumberOfTrials
<numberOfSuccesses
or ifalternateHypothesis
is null. See Also:
