Python中是否有内置或标准的库方法来计算一组数字的算术平均值(一种平均值)?


当前回答

使用statistics.mean:

import statistics
print(statistics.mean([1,2,4])) # 2.3333333333333335

它从Python 3.4开始可用。对于3.1-3.3用户,PyPI上的stats名称下提供了该模块的旧版本。只需将统计数据更改为统计数据。

其他回答

其他人已经发布了非常好的答案,但有些人可能仍然在寻找一个经典的方法来查找Mean(avg),所以我在这里发布这个(在Python 3.6中测试的代码):

def meanmanual(listt):

mean = 0
lsum = 0
lenoflist = len(listt)

for i in listt:
    lsum += i

mean = lsum / lenoflist
return float(mean)

a = [1, 2, 3, 4, 5, 6]
meanmanual(a)

Answer: 3.5

NumPy有一个NumPy。这是算术平均数。用法如下:

>>> import numpy
>>> a = [1, 2, 4]
>>> numpy.mean(a)
2.3333333333333335

如果你正在使用python >= 3.8,你可以使用统计模块中引入的fmean函数,它是标准库的一部分:

>>> from statistics import fmean
>>> fmean([0, 1, 2, 3])
1.5

它比统计数据还要快。均值函数,但它事先将其数据点转换为浮点数,因此在某些特定情况下可能不太准确。

你可以在这里看到它的实现

def list_mean(nums):
    sumof = 0
    num_of = len(nums)
    mean = 0
    for i in nums:
        sumof += i
    mean = sumof / num_of
    return float(mean)
from statistics import mean
avarage=mean(your_list)

例如

from statistics import mean

my_list=[5,2,3,2]
avarage=mean(my_list)
print(avarage)

结果是

3.0