|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.commons.math3.stat.inference.OneWayAnova
public class OneWayAnova
Implements one-way ANOVA (analysis of variance) statistics.
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 commons-math 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 Summary | |
---|---|
OneWayAnova()
Default constructor. |
Method Summary | |
---|---|
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. |
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. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public OneWayAnova()
Method Detail |
---|
public double anovaFValue(Collection<double[]> categoryData) throws NullArgumentException, DimensionMismatchException
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 category
NullArgumentException
- if categoryData
is null
DimensionMismatchException
- 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 NullArgumentException, DimensionMismatchException, ConvergenceException, MaxCountExceededException
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
commons-math 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 commons-math implementation of the F distribution.
categoryData
- Collection
of double[]
arrays each containing data for one category
NullArgumentException
- if categoryData
is null
DimensionMismatchException
- if the length of the categoryData
array is less than 2 or a contained double[]
array does not have
at least two values
ConvergenceException
- if the p-value can not be computed due to a convergence error
MaxCountExceededException
- if the maximum number of iterations is exceededpublic boolean anovaTest(Collection<double[]> categoryData, double alpha) throws NullArgumentException, DimensionMismatchException, OutOfRangeException, ConvergenceException, MaxCountExceededException
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
commons-math 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 commons-math 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 test
NullArgumentException
- if categoryData
is null
DimensionMismatchException
- if the length of the categoryData
array is less than 2 or a contained double[]
array does not have
at least two values
OutOfRangeException
- if alpha
is not in the range (0, 0.5]
ConvergenceException
- if the p-value can not be computed due to a convergence error
MaxCountExceededException
- if the maximum number of iterations is exceeded
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |