org.apache.commons.math.stat.inference
Interface ChiSquareTest

All Known Subinterfaces:
UnknownDistributionChiSquareTest
All Known Implementing Classes:
ChiSquareTestImpl

public interface ChiSquareTest

An interface for Chi-Square tests.

This interface handles only known distributions. If the distribution is unknown and should be provided by a sample, then the UnknownDistributionChiSquareTest extended interface should be used instead.

Version:
$Revision: 811685 $ $Date: 2009-09-05 19:36:48 +0200 (sam. 05 sept. 2009) $

Method Summary
 double chiSquare(double[] expected, long[] observed)
          Computes the Chi-Square statistic comparing observed and expected frequency counts.
 double chiSquare(long[][] counts)
          Computes the Chi-Square statistic associated with a chi-square test of independence based on the input counts array, viewed as a two-way table.
 double chiSquareTest(double[] expected, long[] observed)
          Returns the observed significance level, or p-value, associated with a Chi-square 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 Chi-square 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 p-value, associated with a chi-square test of independence based on the input counts array, viewed as a two-way table.
 boolean chiSquareTest(long[][] counts, double alpha)
          Performs a chi-square test of independence evaluating the null hypothesis that the classifications represented by the counts in the columns of the input 2-way table are independent of the rows, with significance level alpha.
 

Method Detail

chiSquare

double chiSquare(double[] expected,
                 long[] observed)
                 throws IllegalArgumentException
Computes the Chi-Square statistic comparing observed and expected frequency counts.

This statistic can be used to perform a Chi-Square 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.

Parameters:
observed - array of observed frequency counts
expected - array of expected frequency counts
Returns:
chiSquare statistic
Throws:
IllegalArgumentException - if preconditions are not met

chiSquareTest

double chiSquareTest(double[] expected,
                     long[] observed)
                     throws IllegalArgumentException,
                            MathException
Returns the observed significance level, or p-value, associated with a Chi-square goodness of fit test comparing the 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.

Parameters:
observed - array of observed frequency counts
expected - array of expected frequency counts
Returns:
p-value
Throws:
IllegalArgumentException - if preconditions are not met
MathException - if an error occurs computing the p-value

chiSquareTest

boolean chiSquareTest(double[] expected,
                      long[] observed,
                      double alpha)
                      throws IllegalArgumentException,
                             MathException
Performs a Chi-square 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. 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:

If any of the preconditions are not met, an IllegalArgumentException is thrown.

Parameters:
observed - array of observed frequency counts
expected - array of expected frequency counts
alpha - significance level of the test
Returns:
true iff null hypothesis can be rejected with confidence 1 - alpha
Throws:
IllegalArgumentException - if preconditions are not met
MathException - if an error occurs performing the test

chiSquare

double chiSquare(long[][] counts)
                 throws IllegalArgumentException
Computes the Chi-Square statistic associated with a chi-square test of independence based on the input counts array, viewed as a two-way table.

The rows of the 2-way table are count[0], ... , count[count.length - 1]

Preconditions:

If any of the preconditions are not met, an IllegalArgumentException is thrown.

Parameters:
counts - array representation of 2-way table
Returns:
chiSquare statistic
Throws:
IllegalArgumentException - if preconditions are not met

chiSquareTest

double chiSquareTest(long[][] counts)
                     throws IllegalArgumentException,
                            MathException
Returns the observed significance level, or p-value, associated with a chi-square test of independence based on the input counts array, viewed as a two-way table.

The rows of the 2-way table are count[0], ... , count[count.length - 1]

Preconditions:

If any of the preconditions are not met, an IllegalArgumentException is thrown.

Parameters:
counts - array representation of 2-way table
Returns:
p-value
Throws:
IllegalArgumentException - if preconditions are not met
MathException - if an error occurs computing the p-value

chiSquareTest

boolean chiSquareTest(long[][] counts,
                      double alpha)
                      throws IllegalArgumentException,
                             MathException
Performs a chi-square test of independence evaluating the null hypothesis that the classifications represented by the counts in the columns of the input 2-way table are independent of the rows, with significance level alpha. Returns true iff the null hypothesis can be rejected with 100 * (1 - alpha) percent confidence.

The rows of the 2-way 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:

If any of the preconditions are not met, an IllegalArgumentException is thrown.

Parameters:
counts - array representation of 2-way table
alpha - significance level of the test
Returns:
true iff null hypothesis can be rejected with confidence 1 - alpha
Throws:
IllegalArgumentException - if preconditions are not met
MathException - if an error occurs performing the test


Copyright © 2003-2011 The Apache Software Foundation. All Rights Reserved.