Class WilcoxonSignedRankTest

java.lang.Object
org.apache.commons.math3.stat.inference.WilcoxonSignedRankTest

public class WilcoxonSignedRankTest extends Object
An implementation of the Wilcoxon signed-rank test.
  • Constructor Details

    • WilcoxonSignedRankTest

      public WilcoxonSignedRankTest()
      Create a test instance where NaN's are left in place and ties get the average of applicable ranks. Use this unless you are very sure of what you are doing.
    • WilcoxonSignedRankTest

      public WilcoxonSignedRankTest(NaNStrategy nanStrategy, TiesStrategy tiesStrategy)
      Create a test instance using the given strategies for NaN's and ties. Only use this if you are sure of what you are doing.
      Parameters:
      nanStrategy - specifies the strategy that should be used for Double.NaN's
      tiesStrategy - specifies the strategy that should be used for ties
  • Method Details

    • wilcoxonSignedRank

      public double wilcoxonSignedRank(double[] x, double[] y) throws NullArgumentException, NoDataException, DimensionMismatchException
      Computes the Wilcoxon signed ranked statistic comparing mean for two related samples or repeated measurements on a single sample.

      This statistic can be used to perform a Wilcoxon signed ranked test evaluating the null hypothesis that the two related samples or repeated measurements on a single sample has equal mean.

      Let Xi denote the i'th individual of the first sample and Yi the related i'th individual in the second sample. Let Zi = Yi - Xi.

      Preconditions:

      • The differences Zi must be independent.
      • Each Zi comes from a continuous population (they must be identical) and is symmetric about a common median.
      • The values that Xi and Yi represent are ordered, so the comparisons greater than, less than, and equal to are meaningful.

      Parameters:
      x - the first sample
      y - the second sample
      Returns:
      wilcoxonSignedRank statistic (the larger of W+ and W-)
      Throws:
      NullArgumentException - if x or y are null.
      NoDataException - if x or y are zero-length.
      DimensionMismatchException - if x and y do not have the same length.
    • wilcoxonSignedRankTest

      public double wilcoxonSignedRankTest(double[] x, double[] y, boolean exactPValue) throws NullArgumentException, NoDataException, DimensionMismatchException, NumberIsTooLargeException, ConvergenceException, MaxCountExceededException
      Returns the observed significance level, or p-value, associated with a Wilcoxon signed ranked statistic comparing mean for two related samples or repeated measurements on a single sample.

      Let Xi denote the i'th individual of the first sample and Yi the related i'th individual in the second sample. Let Zi = Yi - Xi.

      Preconditions:

      • The differences Zi must be independent.
      • Each Zi comes from a continuous population (they must be identical) and is symmetric about a common median.
      • The values that Xi and Yi represent are ordered, so the comparisons greater than, less than, and equal to are meaningful.

      Parameters:
      x - the first sample
      y - the second sample
      exactPValue - if the exact p-value is wanted (only works for x.length invalid input: '<'= 30, if true and x.length > 30, this is ignored because calculations may take too long)
      Returns:
      p-value
      Throws:
      NullArgumentException - if x or y are null.
      NoDataException - if x or y are zero-length.
      DimensionMismatchException - if x and y do not have the same length.
      NumberIsTooLargeException - if exactPValue is true and x.length > 30
      ConvergenceException - if the p-value can not be computed due to a convergence error
      MaxCountExceededException - if the maximum number of iterations is exceeded