np.mean() vs np.average() in Python NumPy?(Python NumPy 中的 np.mean() 与 np.average() 对比?)
问题描述
我注意到
In [30]: np.mean([1, 2, 3])
Out[30]: 2.0
In [31]: np.average([1, 2, 3])
Out[31]: 2.0
不过应该还是有区别的,毕竟是两个不同的功能.
However, there should be some differences, since after all they are two different functions.
它们之间有什么区别?
推荐答案
np.average 采用可选的权重参数.如果未提供,则它们是等效的.看一下源码:Mean, 平均值
np.average takes an optional weight parameter. If it is not supplied they are equivalent. Take a look at the source code: Mean, Average
np.mean:
try:
mean = a.mean
except AttributeError:
return _wrapit(a, 'mean', axis, dtype, out)
return mean(axis, dtype, out)
np.average:
np.average:
...
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
...
这篇关于Python NumPy 中的 np.mean() 与 np.average() 对比?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!