public class ChiSquareTestImpl extends java.lang.Object implements UnknownDistributionChiSquareTest
UnknownDistributionChiSquareTest
interface.Constructor and Description 

ChiSquareTestImpl()
Construct a ChiSquareTestImpl

ChiSquareTestImpl(ChiSquaredDistribution x)
Create a test instance using the given distribution for computing
inference statistics.

Modifier and Type  Method and Description 

double 
chiSquare(double[] expected,
long[] observed)

double 
chiSquare(long[][] counts)
Computes the ChiSquare statistic associated with a
chisquare test of independence based on the input
counts
array, viewed as a twoway table. 
double 
chiSquareDataSetsComparison(long[] observed1,
long[] observed2)
Computes a
ChiSquare two sample test statistic comparing bin frequency counts
in
observed1 and observed2 . 
double 
chiSquareTest(double[] expected,
long[] observed)
Returns the observed significance level, or
pvalue, associated with a
Chisquare goodness of fit test comparing the
observed
frequency counts to those in the expected array. 
boolean 
chiSquareTest(double[] expected,
long[] observed,
double alpha)
Performs a
Chisquare goodness of fit test evaluating the null hypothesis that the observed counts
conform to the frequency distribution described by the expected counts, with
significance level
alpha . 
double 
chiSquareTest(long[][] counts)
Returns the observed significance level, or
pvalue, associated with a
chisquare test of independence based on the input
counts
array, viewed as a twoway table. 
boolean 
chiSquareTest(long[][] counts,
double alpha)
Performs a
chisquare test of independence evaluating the null hypothesis that the classifications
represented by the counts in the columns of the input 2way table are independent of the rows,
with significance level
alpha . 
double 
chiSquareTestDataSetsComparison(long[] observed1,
long[] observed2)
Returns the observed significance level, or
pvalue, associated with a ChiSquare two sample test comparing
bin frequency counts in
observed1 and
observed2 . 
boolean 
chiSquareTestDataSetsComparison(long[] observed1,
long[] observed2,
double alpha)
Performs a ChiSquare two sample test comparing two binned data
sets.

void 
setDistribution(ChiSquaredDistribution value)
Modify the distribution used to compute inference statistics.

public ChiSquareTestImpl()
public ChiSquareTestImpl(ChiSquaredDistribution x)
x
 distribution used to compute inference statistics.public double chiSquare(double[] expected, long[] observed) throws java.lang.IllegalArgumentException
observed
and expected
frequency counts.
This statistic can be used to perform a ChiSquare test evaluating the null hypothesis that the observed counts follow the expected distribution.
Preconditions:
If any of the preconditions are not met, an
IllegalArgumentException
is thrown.
Note: This implementation rescales the
expected
array if necessary to ensure that the sum of the
expected and observed counts are equal.
chiSquare
in interface ChiSquareTest
observed
 array of observed frequency countsexpected
 array of expected frequency countsjava.lang.IllegalArgumentException
 if preconditions are not met
or length is less than 2public double chiSquareTest(double[] expected, long[] observed) throws java.lang.IllegalArgumentException, MathException
observed
frequency counts to those in the expected
array.
The number returned is the smallest significance level at which one can reject the null hypothesis that the observed counts conform to the frequency distribution described by the expected counts.
Preconditions:
If any of the preconditions are not met, an
IllegalArgumentException
is thrown.
Note: This implementation rescales the
expected
array if necessary to ensure that the sum of the
expected and observed counts are equal.
chiSquareTest
in interface ChiSquareTest
observed
 array of observed frequency countsexpected
 array of expected frequency countsjava.lang.IllegalArgumentException
 if preconditions are not metMathException
 if an error occurs computing the pvaluepublic boolean chiSquareTest(double[] expected, long[] observed, double alpha) throws java.lang.IllegalArgumentException, MathException
alpha
. Returns true iff the null hypothesis can be rejected
with 100 * (1  alpha) percent confidence.
Example:
To test the hypothesis that observed
follows
expected
at the 99% level, use
chiSquareTest(expected, observed, 0.01)
Preconditions:
0 < alpha < 0.5
If any of the preconditions are not met, an
IllegalArgumentException
is thrown.
Note: This implementation rescales the
expected
array if necessary to ensure that the sum of the
expected and observed counts are equal.
chiSquareTest
in interface ChiSquareTest
observed
 array of observed frequency countsexpected
 array of expected frequency countsalpha
 significance level of the testjava.lang.IllegalArgumentException
 if preconditions are not metMathException
 if an error occurs performing the testpublic double chiSquare(long[][] counts) throws java.lang.IllegalArgumentException
ChiSquareTest
counts
array, viewed as a twoway table.
The rows of the 2way table are
count[0], ... , count[count.length  1]
Preconditions:
counts
must have at
least 2 columns and at least 2 rows.
If any of the preconditions are not met, an
IllegalArgumentException
is thrown.
chiSquare
in interface ChiSquareTest
counts
 array representation of 2way tablejava.lang.IllegalArgumentException
 if preconditions are not metpublic double chiSquareTest(long[][] counts) throws java.lang.IllegalArgumentException, MathException
ChiSquareTest
counts
array, viewed as a twoway table.
The rows of the 2way table are
count[0], ... , count[count.length  1]
Preconditions:
counts
must have at least 2 columns and
at least 2 rows.
If any of the preconditions are not met, an
IllegalArgumentException
is thrown.
chiSquareTest
in interface ChiSquareTest
counts
 array representation of 2way tablejava.lang.IllegalArgumentException
 if preconditions are not metMathException
 if an error occurs computing the pvaluepublic boolean chiSquareTest(long[][] counts, double alpha) throws java.lang.IllegalArgumentException, MathException
ChiSquareTest
alpha
. Returns true iff the null hypothesis can be rejected
with 100 * (1  alpha) percent confidence.
The rows of the 2way table are
count[0], ... , count[count.length  1]
Example:
To test the null hypothesis that the counts in
count[0], ... , count[count.length  1]
all correspond to the same underlying probability distribution at the 99% level, use
chiSquareTest(counts, 0.01)
Preconditions:
counts
must have at least 2 columns and
at least 2 rows.
If any of the preconditions are not met, an
IllegalArgumentException
is thrown.
chiSquareTest
in interface ChiSquareTest
counts
 array representation of 2way tablealpha
 significance level of the testjava.lang.IllegalArgumentException
 if preconditions are not metMathException
 if an error occurs performing the testpublic double chiSquareDataSetsComparison(long[] observed1, long[] observed2) throws java.lang.IllegalArgumentException
UnknownDistributionChiSquareTest
Computes a
ChiSquare two sample test statistic comparing bin frequency counts
in observed1
and observed2
. The
sums of frequency counts in the two samples are not required to be the
same. The formula used to compute the test statistic is
∑[(K * observed1[i]  observed2[i]/K)^{2} / (observed1[i] + observed2[i])]
where
K = &sqrt;[&sum(observed2 / ∑(observed1)]
This statistic can be used to perform a ChiSquare test evaluating the null hypothesis that both observed counts follow the same distribution.
Preconditions:
observed1
and observed2
must have the same length and
their common length must be at least 2.
If any of the preconditions are not met, an
IllegalArgumentException
is thrown.
chiSquareDataSetsComparison
in interface UnknownDistributionChiSquareTest
observed1
 array of observed frequency counts of the first data setobserved2
 array of observed frequency counts of the second data setjava.lang.IllegalArgumentException
 if preconditions are not metpublic double chiSquareTestDataSetsComparison(long[] observed1, long[] observed2) throws java.lang.IllegalArgumentException, MathException
UnknownDistributionChiSquareTest
Returns the observed significance level, or
pvalue, associated with a ChiSquare two sample test comparing
bin frequency counts in observed1
and
observed2
.
The number returned is the smallest significance level at which one can reject the null hypothesis that the observed counts conform to the same distribution.
See UnknownDistributionChiSquareTest.chiSquareDataSetsComparison(long[], long[])
for details
on the formula used to compute the test statistic. The degrees of
of freedom used to perform the test is one less than the common length
of the input observed count arrays.
observed1
and observed2
must
have the same length and
their common length must be at least 2.
If any of the preconditions are not met, an
IllegalArgumentException
is thrown.
chiSquareTestDataSetsComparison
in interface UnknownDistributionChiSquareTest
observed1
 array of observed frequency counts of the first data setobserved2
 array of observed frequency counts of the second data setjava.lang.IllegalArgumentException
 if preconditions are not metMathException
 if an error occurs computing the pvaluepublic boolean chiSquareTestDataSetsComparison(long[] observed1, long[] observed2, double alpha) throws java.lang.IllegalArgumentException, MathException
UnknownDistributionChiSquareTest
Performs a ChiSquare two sample test comparing two binned data
sets. The test evaluates the null hypothesis that the two lists of
observed counts conform to the same frequency distribution, with
significance level alpha
. Returns true iff the null
hypothesis can be rejected with 100 * (1  alpha) percent confidence.
See UnknownDistributionChiSquareTest.chiSquareDataSetsComparison(long[], long[])
for
details on the formula used to compute the Chisquare statistic used
in the test. The degrees of of freedom used to perform the test is
one less than the common length of the input observed count arrays.
observed1
and observed2
must
have the same length and their common length must be at least 2.
0 < alpha < 0.5
If any of the preconditions are not met, an
IllegalArgumentException
is thrown.
chiSquareTestDataSetsComparison
in interface UnknownDistributionChiSquareTest
observed1
 array of observed frequency counts of the first data setobserved2
 array of observed frequency counts of the second data setalpha
 significance level of the testjava.lang.IllegalArgumentException
 if preconditions are not metMathException
 if an error occurs performing the testpublic void setDistribution(ChiSquaredDistribution value)
value
 the new distributionCopyright © 2010  2020 Adobe. All Rights Reserved