# scipy.stats.mstats.gmean

scipy.stats.mstats.gmean(a, axis=0, dtype=None, weights=None)

  Compute the geometric mean along the specified axis.

  Return the geometric average of the array elements. That is: n-th root of (x1 * x2 * … * xn)

  Parameters
    a array_like

      Input array or object that can be converted to an array.

    axis int or None, optional

      Axis along which the geometric mean is computed. Default is 0. If None, compute over the whole array a.

    dtype dtype, optional

      Type of the returned array and of the accumulator in which the elements are summed. If dtype is not specified, it defaults to the dtype of a, unless a has an integer dtype with a precision less than that of the default platform integer. In that case, the default platform integer is used.

    weights array_like, optional

      The weights array can either be 1-D (in which case its length must be the size of a along the given axis) or of the same shape as a. Default is None, which gives each value a weight of 1.0.

  Returns
    gmean ndarray

      See dtype parameter above.

  See also

  `numpy.mean`

    Arithmetic average

  `numpy.average`

    Weighted average

  `hmean`

    Harmonic mean

  Notes

  The geometric average is computed over a single dimension of the input array, axis=0 by default, or all values in the array if axis=None. float64 intermediate and return values are used for integer inputs.

  Use masked arrays to ignore any non-finite values in the input or that arise in the calculations such as Not a Number and infinity because masked arrays automatically mask any non-finite values.

  References

  1

    “Weighted Geometric Mean”, Wikipedia, https://en.wikipedia.org/wiki/Weighted_geometric_mean.

  Examples

      >>> from scipy.stats import gmean
      >>> gmean([1, 4])
      2.0
      >>> gmean([1, 2, 3, 4, 5, 6, 7])
      3.3800151591412964

scipy.stats.mstats.describe scipy.stats.mstats.hmean