scipy.stats.mstats.compare_medians_ms(group_1, group_2, axis=None)[source]#

Compares the medians from two independent groups along the given axis.

The comparison is performed using the McKean-Schrader estimate of the standard error of the medians.


First dataset. Has to be of size >=7.


Second dataset. Has to be of size >=7.

axisint, optional

Axis along which the medians are estimated. If None, the arrays are flattened. If axis is not None, then group_1 and group_2 should have the same shape.

compare_medians_ms{float, ndarray}

If axis is None, then returns a float, otherwise returns a 1-D ndarray of floats with a length equal to the length of group_1 along axis.



McKean, Joseph W., and Ronald M. Schrader. “A comparison of methods for studentizing the sample median.” Communications in Statistics-Simulation and Computation 13.6 (1984): 751-773.


>>> from scipy import stats
>>> a = [1, 2, 3, 4, 5, 6, 7]
>>> b = [8, 9, 10, 11, 12, 13, 14]
>>> stats.mstats.compare_medians_ms(a, b, axis=None)

The function is vectorized to compute along a given axis.

>>> import numpy as np
>>> rng = np.random.default_rng()
>>> x = rng.random(size=(3, 7))
>>> y = rng.random(size=(3, 8))
>>> stats.mstats.compare_medians_ms(x, y, axis=1)
array([0.36908985, 0.36092538, 0.2765313 ])