#### Previous topic

scipy.stats.median_test

#### Next topic

scipy.stats.boxcox

# scipy.stats.mood

`scipy.stats.``mood`(x, y, axis=0)

  Perform Mood’s test for equal scale parameters.

  Mood’s two-sample test for scale parameters is a non-parametric test for the null hypothesis that two samples are drawn from the same distribution with the same scale parameter.

  Parameters:

  x, y : array_like

  > Arrays of sample data.

  axis : int, optional

  > The axis along which the samples are tested. x and y can be of different length along axis. If axis is None, x and y are flattened and the test is done on all values in the flattened arrays.

  Returns:

  z : scalar or ndarray

  > The z-score for the hypothesis test. For 1-D inputs a scalar is returned.

  p-value : scalar ndarray

  > The p-value for the hypothesis test.

  See also

  `fligner`
    A non-parametric test for the equality of k variances
  `ansari`
    A non-parametric test for the equality of 2 variances
  `bartlett`
    A parametric test for equality of k variances in normal samples
  `levene`
    A parametric test for equality of k variances

  Notes

  The data are assumed to be drawn from probability distributions `f(x)` and `f(x/s) / s` respectively, for some probability density function f. The null hypothesis is that `s == 1`.

  For multi-dimensional arrays, if the inputs are of shapes `(n0, n1, n2, n3)` and `(n0, m1, n2, n3)`, then if `axis=1`, the resulting z and p values will have shape `(n0, n2, n3)`. Note that `n1` and `m1` don’t have to be equal, but the other dimensions do.

  Examples

      >>> from scipy import stats
      >>> np.random.seed(1234)
      >>> x2 = np.random.randn(2, 45, 6, 7)
      >>> x1 = np.random.randn(2, 30, 6, 7)
      >>> z, p = stats.mood(x1, x2, axis=1)
      >>> p.shape
      (2, 6, 7)

  Find the number of points where the difference in scale is not significant:

      >>> (p > 0.1).sum()
      74

  Perform the test with different scales:

      >>> x1 = np.random.randn(2, 30)
      >>> x2 = np.random.randn(2, 35) * 10.0
      >>> stats.mood(x1, x2, axis=1)
      (array([-5.7178125 , -5.25342163]), array([  1.07904114e-08,   1.49299218e-07]))