-
numpy.average(a, axis=None, weights=None, returned=False)
[source] -
Compute the weighted average along the specified axis.
Parameters: a : array_like
Array containing data to be averaged. If
a
is not an array, a conversion is attempted.axis : int, optional
Axis along which to average
a
. IfNone
, averaging is done over the flattened array.weights : array_like, optional
An array of weights associated with the values in
a
. Each value ina
contributes to the average according to its associated weight. The weights array can either be 1-D (in which case its length must be the size ofa
along the given axis) or of the same shape asa
. Ifweights=None
, then all data ina
are assumed to have a weight equal to one.returned : bool, optional
Default is
False
. IfTrue
, the tuple (average
,sum_of_weights
) is returned, otherwise only the average is returned. Ifweights=None
,sum_of_weights
is equivalent to the number of elements over which the average is taken.Returns: average, [sum_of_weights] : array_type or double
Return the average along the specified axis. When returned is
True
, return a tuple with the average as the first element and the sum of the weights as the second element. The return type isFloat
ifa
is of integer type, otherwise it is of the same type asa
.sum_of_weights
is of the same type asaverage
.Raises: ZeroDivisionError
When all weights along axis are zero. See
numpy.ma.average
for a version robust to this type of error.TypeError
When the length of 1D
weights
is not the same as the shape ofa
along axis.Examples
>>> data = range(1,5) >>> data [1, 2, 3, 4] >>> np.average(data) 2.5 >>> np.average(range(1,11), weights=range(10,0,-1)) 4.0
>>> data = np.arange(6).reshape((3,2)) >>> data array([[0, 1], [2, 3], [4, 5]]) >>> np.average(data, axis=1, weights=[1./4, 3./4]) array([ 0.75, 2.75, 4.75]) >>> np.average(data, weights=[1./4, 3./4]) Traceback (most recent call last): ... TypeError: Axis must be specified when shapes of a and weights differ.
numpy.average()
2017-01-10 18:12:55
Please login to continue.