...
if weights is None :
avg = a.mean(axis)
scl = avg.dtype.type(a.size/avg.size)
else:
#code that does weighted mean here
if returned: #returned is another optional argument
scl = np.multiply(avg, 0) + scl
return avg, scl
else:
return avg
...
Ответ 2
np.mean всегда вычисляет среднее арифметическое и имеет некоторые дополнительные параметры для ввода и вывода (например, какие типы данных использовать, где разместить результат).
np.average может вычислять средневзвешенное значение, если задан параметр weights.
Ответ 3
В некоторой версии numpy есть еще одна важная разница, о которой вы должны знать:
average не принимают маски учета, поэтому вычисляйте среднее значение по всему набору данных.
mean принимает маски учета, поэтому вычисляет среднее значение только по незамасленным значениям.
g = [1,2,3,55,66,77]
f = np.ma.masked_greater(g,5)
np.average(f)
Out: 34.0
np.mean(f)
Out: 2.0
Ответ 4
В вашем вызове две функции одинаковы.
average может вычислять средневзвешенное значение.