Python中是否有内置或标准的库方法来计算一组数字的算术平均值(一种平均值)?
当前回答
我不知道标准库中的任何东西。然而,你可以使用这样的东西:
def mean(numbers):
return float(sum(numbers)) / max(len(numbers), 1)
>>> mean([1,2,3,4])
2.5
>>> mean([])
0.0
在numpy中,有numpy.mean()。
其他回答
我不知道标准库中的任何东西。然而,你可以使用这样的东西:
def mean(numbers):
return float(sum(numbers)) / max(len(numbers), 1)
>>> mean([1,2,3,4])
2.5
>>> mean([])
0.0
在numpy中,有numpy.mean()。
而不是铸造浮动,你可以做以下
def mean(nums):
return sum(nums, 0.0) / len(nums)
或者使用
mean = lambda nums: sum(nums, 0.0) / len(nums)
更新:2019-12-15
Python 3.8在统计模块中添加了函数fmean。它更快,总是返回浮点数。
将数据转换为浮点数并计算算术平均值。 这比mean()函数运行得快,并且它总是返回一个 自由浮动。数据可以是序列或可迭代对象。如果输入数据集为 empty则引发StatisticsError。 Fmean ([3.5, 4.0, 5.25]) 4.25 3.8新版功能。
def avg(l):
"""uses floating-point division."""
return sum(l) / float(len(l))
例子:
l1 = [3,5,14,2,5,36,4,3]
l2 = [0,0,0]
print(avg(l1)) # 9.0
print(avg(l2)) # 0.0
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
使用statistics.mean:
import statistics
print(statistics.mean([1,2,4])) # 2.3333333333333335
它从Python 3.4开始可用。对于3.1-3.3用户,PyPI上的stats名称下提供了该模块的旧版本。只需将统计数据更改为统计数据。
推荐文章
- 如何限制Django模型中数值字段的最大值?
- 访问对象内存地址
- 为什么在Python方法中需要显式地有“self”参数?
- 如何升级Windows 10下的Python安装?
- tqdm在Jupyter笔记本重复打印新的进度条
- 如何在for循环中注释类型?
- 如何替换一个Pandas数据框架的字符串列中的文本?
- 从pandas apply()返回多个列
- 从列中的字符串中删除不需要的部分
- Python只大写第一个字母
- 使用熊猫合并时如何保持索引
- 如何排序两个列表(其中相互引用)在完全相同的方式
- Python中的哈希映射
- 子进程Popen和调用之间的区别是什么(我如何使用它们)?
- 将python 'type'对象转换为字符串