public class OneWayAnova extends Object
 Tests for differences between two or more categories of univariate data
 (for example, the body mass index of accountants, lawyers, doctors and
 computer programmers).  When two categories are given, this is equivalent to
 the TTest.
 
 Uses the Hipparchus F Distribution implementation to estimate exact p-values.
This implementation is based on a description at http://faculty.vassar.edu/lowry/ch13pt1.html
 Abbreviations: bg = between groups,
                wg = within groups,
                ss = sum squared deviations
 | Constructor and Description | 
|---|
| OneWayAnova() | 
| Modifier and Type | Method and Description | 
|---|---|
| double | anovaFValue(Collection<double[]> categoryData)Computes the ANOVA F-value for a collection of  double[]arrays. | 
| double | anovaPValue(Collection<double[]> categoryData)Computes the ANOVA P-value for a collection of  double[]arrays. | 
| double | anovaPValue(Collection<StreamingStatistics> categoryData,
           boolean allowOneElementData)Computes the ANOVA P-value for a collection of  StreamingStatistics. | 
| boolean | anovaTest(Collection<double[]> categoryData,
         double alpha)Performs an ANOVA test, evaluating the null hypothesis that there
 is no difference among the means of the data categories. | 
public double anovaFValue(Collection<double[]> categoryData) throws MathIllegalArgumentException, NullArgumentException
double[]
 arrays.
 Preconditions:
Collection must contain
 double[] arrays.double[] arrays in the
 categoryData collection and each of these arrays must
 contain at least two values.This implementation computes the F statistic using the definitional formula
F = msbg/mswgwhere
msbg = between group mean square mswg = within group mean squareare as defined here
categoryData - Collection of double[]
 arrays each containing data for one categoryNullArgumentException - if categoryData is nullMathIllegalArgumentException - if the length of the categoryData
 array is less than 2 or a contained double[] array does not have
 at least two valuespublic double anovaPValue(Collection<double[]> categoryData) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
double[]
 arrays.
 Preconditions:
Collection must contain
 double[] arrays.double[] arrays in the
 categoryData collection and each of these arrays must
 contain at least two values.
 This implementation uses the
 Hipparchus F Distribution implementation to estimate the exact
 p-value, using the formula
p = 1 - cumulativeProbability(F)where
F is the F value and cumulativeProbability
 is the Hipparchus implementation of the F distribution.categoryData - Collection of double[]
 arrays each containing data for one categoryNullArgumentException - if categoryData is nullMathIllegalArgumentException - if the length of the categoryData
 array is less than 2 or a contained double[] array does not have
 at least two valuesMathIllegalStateException - if the p-value can not be computed due to a convergence errorMathIllegalStateException - if the maximum number of iterations is exceededpublic double anovaPValue(Collection<StreamingStatistics> categoryData, boolean allowOneElementData) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
StreamingStatistics.
 Preconditions:
Collection must contain
 StreamingStatistics.StreamingStatistics in the
 categoryData collection and each of these statistics must
 contain at least two values.
 This implementation uses the
 Hipparchus F Distribution implementation to estimate the exact
 p-value, using the formula
p = 1 - cumulativeProbability(F)where
F is the F value and cumulativeProbability
 is the Hipparchus implementation of the F distribution.categoryData - Collection of StreamingStatistics
 each containing data for one categoryallowOneElementData - if true, allow computation for one catagory
 only or for one data element per categoryNullArgumentException - if categoryData is nullMathIllegalArgumentException - if the length of the categoryData
 array is less than 2 or a contained StreamingStatistics does not have
 at least two valuesMathIllegalStateException - if the p-value can not be computed due to a convergence errorMathIllegalStateException - if the maximum number of iterations is exceededpublic boolean anovaTest(Collection<double[]> categoryData, double alpha) throws MathIllegalArgumentException, NullArgumentException, MathIllegalStateException
Preconditions:
Collection must contain
 double[] arrays.double[] arrays in the
 categoryData collection and each of these arrays must
 contain at least two values.
 This implementation uses the
 Hipparchus F Distribution implementation to estimate the exact
 p-value, using the formula
p = 1 - cumulativeProbability(F)where
F is the F value and cumulativeProbability
 is the Hipparchus implementation of the F distribution.
 True is returned iff the estimated p-value is less than alpha.
categoryData - Collection of double[]
 arrays each containing data for one categoryalpha - significance level of the testNullArgumentException - if categoryData is nullMathIllegalArgumentException - if the length of the categoryData
 array is less than 2 or a contained double[] array does not have
 at least two valuesMathIllegalArgumentException - if alpha is not in the range (0, 0.5]MathIllegalStateException - if the p-value can not be computed due to a convergence errorMathIllegalStateException - if the maximum number of iterations is exceededCopyright © 2016–2020 Hipparchus.org. All rights reserved.