SciPy

scipy.stats.mstats.gmean

scipy.stats.mstats.gmean(a, axis=0, dtype=None)[source]

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
aarray_like

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

axisint or None, optional

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

dtypedtype, 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.

Returns
gmeanndarray

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.

Examples

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

Previous topic

scipy.stats.mstats.describe

Next topic

scipy.stats.mstats.hmean