STATS_MW_TEST(expr1, expr2, 'STATISTIC') : Stats_Mw_Test « Linear Regression Functions « Oracle PL/SQL Tutorial






The Mann-Whitney test is a non-parametric test that compares two independent samples to test whether two populations are identical against the alternative hypothesis that the two populations are different.

SQL> -- create demo table
SQL> create table myTable(
  2    id           NUMBER(2),
  3    value        NUMBER(6,2)
  4  )
  5  /

Table created.

SQL>
SQL> -- prepare data
SQL> insert into myTable(ID,  value)values (1,9);

1 row created.

SQL> insert into myTable(ID,  value)values (2,2.11);

1 row created.

SQL> insert into myTable(ID,  value)values (3,3.44);

1 row created.

SQL> insert into myTable(ID,  value)values (4,-4.21);

1 row created.

SQL> insert into myTable(ID,  value)values (5,10);

1 row created.

SQL> insert into myTable(ID,  value)values (6,3);

1 row created.

SQL> insert into myTable(ID,  value)values (7,-5.88);

1 row created.

SQL> insert into myTable(ID,  value)values (8,123.45);

1 row created.

SQL> insert into myTable(ID,  value)values (9,98.23);

1 row created.

SQL> insert into myTable(ID,  value)values (10,938.23);

1 row created.

SQL> insert into myTable(ID,  value)values (11,984.23);

1 row created.

SQL> insert into myTable(ID,  value)values (12,198.23);

1 row created.

SQL> insert into myTable(ID,  value)values (13,928.87);

1 row created.

SQL> insert into myTable(ID,  value)values (14,25.37);

1 row created.

SQL> insert into myTable(ID,  value)values (15,918.3);

1 row created.

SQL> insert into myTable(ID,  value)values (16,9.23);

1 row created.

SQL> insert into myTable(ID,  value)values (17,8.23);

1 row created.

SQL>
SQL> select * from myTable
  2  /

        ID      VALUE
---------- ----------
         1          9
         2       2.11
         3       3.44
         4      -4.21
         5         10
         6          3
         7      -5.88
         8     123.45
         9      98.23
        10     938.23
        11     984.23

        ID      VALUE
---------- ----------
        12     198.23
        13     928.87
        14      25.37
        15      918.3
        16       9.23
        17       8.23

17 rows selected.

SQL>
SQL>
SQL> SELECT STATS_MW_TEST(0.3, value, 'STATISTIC') FROM myTable;

STATS_MW_TEST(0.3,VALUE,'STATISTIC')
------------------------------------
                                   0

SQL>
SQL>
SQL>
SQL> -- clean the table
SQL> drop table myTable
  2  /

Table dropped.

SQL>








20.14.Stats_Mw_Test
20.14.1.STATS_MW_TEST(expr1, expr2, 'STATISTIC')
20.14.2.For another equivalent test statistic: STATS_MW_TEST(expr1, expr2, 'U_STATISTIC')
20.14.3.For significance level for one-sided test: STATS_MW_TEST(expr1, expr2, 'ONE_SIDED_SIG')
20.14.4.For significance level for two-sided test: STATS_MW_TEST(expr1, expr2, 'TWO_SIDED_SIG')