gov.sandia.cognition.statistics.method
Class TukeyKramerConfidence

java.lang.Object
  extended by gov.sandia.cognition.util.AbstractCloneableSerializable
      extended by gov.sandia.cognition.statistics.method.AbstractMultipleHypothesisComparison<Collection<? extends Number>,TukeyKramerConfidence.Statistic>
          extended by gov.sandia.cognition.statistics.method.TukeyKramerConfidence
All Implemented Interfaces:
MultipleHypothesisComparison<Collection<? extends Number>>, CloneableSerializable, Serializable, Cloneable

@ConfidenceTestAssumptions(name="Tukey-Kramer Range test",
                           alsoKnownAs={"Tukey\'s Range test","Tukey\'s Honestly Significant Difference test","Tukey\'s HSD test"},
                           description={"Tukey\'s test determines which treatment is statistically different from a multiple comparison.","Tukey\'s test is a generalization of the paired Student\'s t-test for multiple comparisons using a population-correction factor."},
                           assumptions={"All data came from same distribution, without considering treatment effects.","The observations have equal variance.","Measurements are independent and equivalent within a treatment.","All observations are independent."},
                           nullHypothesis="Each treatment has no effect on the mean outcome of the subjects",
                           dataPaired=false,
                           dataSameSize=false,
                           distribution=StudentizedRangeDistribution.class,
                           reference=@PublicationReference(author="Wikipedia",title="Tukey\'s range test",type=WebPage,year=2011,url="http://en.wikipedia.org/wiki/Tukey\'s_range_test"))
public class TukeyKramerConfidence
extends AbstractMultipleHypothesisComparison<Collection<? extends Number>,TukeyKramerConfidence.Statistic>

Tukey-Kramer test is the multiple-comparison generalization of the unpaired Student's t-test when conducting multiple comparisons. The t-test and Tukey's Range test are coincident when a single comparison is made. Tukey's Range test is typically used as the post-hoc analysis technique after detecting a difference using a 1-way ANOVA. This class implements Kramer's generalization to unequal subjects in different treatments.

Since:
3.1
Author:
Kevin R. Dixon
See Also:
Serialized Form

Nested Class Summary
static class TukeyKramerConfidence.Statistic
          Statistic from Tukey-Kramer's multiple comparison test
 
Field Summary
 
Fields inherited from interface gov.sandia.cognition.statistics.method.MultipleHypothesisComparison
DEFAULT_UNCOMPENSATED_ALPHA
 
Constructor Summary
TukeyKramerConfidence()
          Creates a new instance of TukeyKramerConfidence
 
Method Summary
 TukeyKramerConfidence clone()
          This makes public the clone method on the Object class and removes the exception that it throws.
 TukeyKramerConfidence.Statistic evaluateNullHypotheses(Collection<? extends Collection<? extends Number>> data, double uncompensatedAlpha)
          Evaluates the null hypotheses associated with the given collection of data.
 
Methods inherited from class gov.sandia.cognition.statistics.method.AbstractMultipleHypothesisComparison
evaluateNullHypotheses
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TukeyKramerConfidence

public TukeyKramerConfidence()
Creates a new instance of TukeyKramerConfidence

Method Detail

clone

public TukeyKramerConfidence clone()
Description copied from class: AbstractCloneableSerializable
This makes public the clone method on the Object class and removes the exception that it throws. Its default behavior is to automatically create a clone of the exact type of object that the clone is called on and to copy all primitives but to keep all references, which means it is a shallow copy. Extensions of this class may want to override this method (but call super.clone() to implement a "smart copy". That is, to target the most common use case for creating a copy of the object. Because of the default behavior being a shallow copy, extending classes only need to handle fields that need to have a deeper copy (or those that need to be reset). Some of the methods in ObjectUtil may be helpful in implementing a custom clone method. Note: The contract of this method is that you must use super.clone() as the basis for your implementation.

Specified by:
clone in interface CloneableSerializable
Overrides:
clone in class AbstractCloneableSerializable
Returns:
A clone of this object.

evaluateNullHypotheses

public TukeyKramerConfidence.Statistic evaluateNullHypotheses(Collection<? extends Collection<? extends Number>> data,
                                                              double uncompensatedAlpha)
Description copied from interface: MultipleHypothesisComparison
Evaluates the null hypotheses associated with the given collection of data.

Specified by:
evaluateNullHypotheses in interface MultipleHypothesisComparison<Collection<? extends Number>>
Specified by:
evaluateNullHypotheses in class AbstractMultipleHypothesisComparison<Collection<? extends Number>,TukeyKramerConfidence.Statistic>
Parameters:
data - Data from each treatment to consider
uncompensatedAlpha - Uncompensated alpha (p-value threshold) for the multiple comparison test, must be [0,1]
Returns:
Statistic that summarizes the multiple comparison test