The Mann-Whitney U-test (usually called U-test) is used to compare differences between two independent data groups which are not normally distributed.
The Mann-Whitney U test is often considered the nonparametric alternative to the independent t-test.
Scale of data measurements should be ordinal, interval or ratio.
The null hypothesis of the U-test is that the distribution underlying sample x is the same as the distribution underlying sample y.
Mann-Whitney U test is used for every field, but is frequently used in psychology, healthcare, nursing, business, and many other disciplines.
Generating initial data for Mann-Whitney u-test:
import matplotlib.pyplot as plt import numpy as np import scipy.stats as stats # the data (different sample sizes) N1 = 30 N2 = 35 data1 = np.random.poisson(2,N1) data2 = np.random.poisson(1,N2) plt.plot(1+np.random.randn(N1)/10,data1,'ks',markerfacecolor='w') plt.plot(2+np.random.randn(N2)/10,data2,'ro',markerfacecolor='w') plt.xlim([0,3]) plt.xticks([1,2],labels=('data1','data2')) plt.xlabel('Data group') plt.ylabel('Data value') plt.show()
Mann-Whitney u-test using the Python scipy library:
U,p = stats.mannwhitneyu(data1,data2) print(U,p)
OUT: 320.0 0.0027477016627586097