示例#1
0
  @Test
  public void testMannWhitneyUSimple() {
    /* Target values computed using R version 2.11.1
     * x <- c(19, 22, 16, 29, 24)
     * y <- c(20, 11, 17, 12)
     * wilcox.test(x, y, alternative = "two.sided", mu = 0, paired = FALSE, exact = FALSE, correct = FALSE)
     * W = 17, p-value = 0.08641
     */
    final double x[] = {19, 22, 16, 29, 24};
    final double y[] = {20, 11, 17, 12};

    Assert.assertEquals(17, testStatistic.mannWhitneyU(x, y), 1e-10);
    Assert.assertEquals(0.08641, testStatistic.mannWhitneyUTest(x, y), 1e-5);
  }
示例#2
0
 @Test
 public void testBigDataSet() {
   double[] d1 = new double[1500];
   double[] d2 = new double[1500];
   for (int i = 0; i < 1500; i++) {
     d1[i] = 2 * i;
     d2[i] = 2 * i + 1;
   }
   double result = testStatistic.mannWhitneyUTest(d1, d2);
   Assert.assertTrue(result > 0.1);
 }
示例#3
0
  @Test
  public void testMannWhitneyUInputValidation() {
    /* Samples must be present, i.e. length > 0
     */
    try {
      testStatistic.mannWhitneyUTest(new double[] {}, new double[] {1.0});
      Assert.fail("x does not contain samples (exact), NoDataException expected");
    } catch (NoDataException ex) {
      // expected
    }

    try {
      testStatistic.mannWhitneyUTest(new double[] {1.0}, new double[] {});
      Assert.fail("y does not contain samples (exact), NoDataException expected");
    } catch (NoDataException ex) {
      // expected
    }

    /*
     * x and y is null
     */
    try {
      testStatistic.mannWhitneyUTest(null, null);
      Assert.fail("x and y is null (exact), NullArgumentException expected");
    } catch (NullArgumentException ex) {
      // expected
    }

    try {
      testStatistic.mannWhitneyUTest(null, null);
      Assert.fail("x and y is null (asymptotic), NullArgumentException expected");
    } catch (NullArgumentException ex) {
      // expected
    }

    /*
     * x or y is null
     */
    try {
      testStatistic.mannWhitneyUTest(null, new double[] {1.0});
      Assert.fail("x is null (exact), NullArgumentException expected");
    } catch (NullArgumentException ex) {
      // expected
    }

    try {
      testStatistic.mannWhitneyUTest(new double[] {1.0}, null);
      Assert.fail("y is null (exact), NullArgumentException expected");
    } catch (NullArgumentException ex) {
      // expected
    }
  }