org.apache.commons.math.stat.inference.OneWayAnova Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aem-sdk-api Show documentation
Show all versions of aem-sdk-api Show documentation
The Adobe Experience Manager SDK
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.commons.math.stat.inference;
import org.apache.commons.math.MathException;
import java.util.Collection;
/**
* An interface for one-way ANOVA (analysis of variance).
*
* 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 {@link org.apache.commons.math.stat.inference.TTest}.
*
*
* @since 1.2
* @version $Revision: 811786 $ $Date: 2009-09-06 11:36:08 +0200 (dim. 06 sept. 2009) $
*/
public interface OneWayAnova {
/**
* Computes the ANOVA F-value for a collection of double[]
* arrays.
*
* Preconditions:
* - The categoryData
Collection
must contain
* double[]
arrays.
* - There must be at least two
double[]
arrays in the
* categoryData
collection and each of these arrays must
* contain at least two values.
*
* @param categoryData Collection
of double[]
* arrays each containing data for one category
* @return Fvalue
* @throws IllegalArgumentException if the preconditions are not met
* @throws MathException if the statistic can not be computed do to a
* convergence or other numerical error.
*/
double anovaFValue(Collection categoryData)
throws IllegalArgumentException, MathException;
/**
* Computes the ANOVA P-value for a collection of double[]
* arrays.
*
* Preconditions:
* - The categoryData
Collection
must contain
* double[]
arrays.
* - There must be at least two
double[]
arrays in the
* categoryData
collection and each of these arrays must
* contain at least two values.
*
* @param categoryData Collection
of double[]
* arrays each containing data for one category
* @return Pvalue
* @throws IllegalArgumentException if the preconditions are not met
* @throws MathException if the statistic can not be computed do to a
* convergence or other numerical error.
*/
double anovaPValue(Collection categoryData)
throws IllegalArgumentException, MathException;
/**
* Performs an ANOVA test, evaluating the null hypothesis that there
* is no difference among the means of the data categories.
*
* Preconditions:
* - The categoryData
Collection
must contain
* double[]
arrays.
* - There must be at least two
double[]
arrays in the
* categoryData
collection and each of these arrays must
* contain at least two values.
* - alpha must be strictly greater than 0 and less than or equal to 0.5.
*
*
* @param categoryData Collection
of double[]
* arrays each containing data for one category
* @param alpha significance level of the test
* @return true if the null hypothesis can be rejected with
* confidence 1 - alpha
* @throws IllegalArgumentException if the preconditions are not met
* @throws MathException if the statistic can not be computed do to a
* convergence or other numerical error.
*/
boolean anovaTest(Collection categoryData, double alpha)
throws IllegalArgumentException, MathException;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy