详解python statistics模块及函数用法


Posted in Python onOctober 27, 2019

本节介绍 Python 中的另一个常用模块 —— statistics模块,该模块提供了用于计算数字数据的数理统计量的函数。它包含了很多函数,具体如下表:

名称 描述
mean() 数据的算术平均数(“平均数”)
harmonic_mean() 数据的调和均值
median() 数据的中位数(中间值)
median_low() 数据的低中位数
median_high() 数据的高中位数
median_grouped() 分组数据的中位数,即第50个百分点
mode() 离散的或标称的数据的单模

mean(data)函数

mean(data) 函数用于计算一组数字的平均值,参数 data 可以是多种形式的,比如 int 型数组或 decimal 型数组等。举例说明函数的具体用法:

>>> statistics.mean([1, 2, 3, 4, 5])
3
>>> from fractions import Fraction as F
>>> statistics.mean([F(4, 7), F(4, 21), F(5, 4), F(1, 4)])
Fraction(95, 168)
>>> from decimal import Decimal as D
>>> statistics.mean([D("0.5"), D("0.78"), D("0.88"), D("0.988")])
Decimal('0.787')

harmonic_mean(data)函数

调和平均数又称倒数平均数,是平均数的一种。 harmonic_mean(data) 函数用于求调和平均数,是总体各统计变量倒数的算术平均数的倒数。例如:

>>> statistics.harmonic_mean([4, 5, 7])
5.0602409638554215

median(data)函数

median(data) 函数用于计算一组数据的中值。如果数据的个数是单数,则中值是中间的数;如果数据的个数是复数,则中值是中间两个数的平均数。例如:

>>> statistics.median([1, 4, 7])
4
>>> statistics.median([1, 4, 7, 10])
5.5
median_low(data)函数
median_low(data) 函数用于计算一组数据的中小值。如果数据的个数是单数,则中小值是中间的数;如果数据的个数是复数,则中小值是中间两个数中最小的数。例如:
>>> statistics.median_low([1, 4, 7])
4
>>> statistics.median_low([1, 4, 7, 10])
4

median_high(data)函数

median_high(data) 函数用于计算一组数据的中大值。如果数据的个数是单数,则中大值是中间的数;如果数据的个数是复数,则中大值是中间两个数中最大的数。例如:

>>> statistics.median_high([1, 4, 7])
4
>>> statistics.median_high([1, 4, 7, 10])
7
median_grouped(data, interval=1)函数
median_grouped(data, interval=1) 函数用于计算分组连续数据的中位数。其中 interval 表示数据之间的间隔,即组距。此函数计算方法较复杂,可参考公式 中位数=中位数所在组下限+{[(样本总数/2-到中位数所在组下限的累加次数)/中位数所在组的次数]*中位数的组距} ,如果数据是空的会报 StatisticsError 错误。例如:
>>> statistics.median_grouped([1, 2, 2, 3, 4, 4, 4, 4, 4, 5])
3.7
>>> statistics.median_grouped([3, 4, 4, 5, 6], interval=1)
4.25
>>> statistics.median_grouped([1, 3, 5, 5, 7], interval=2)
4.5

示例说明:

[1, 2, 2, 3, 4, 4, 4, 4, 4, 5]中位数在4这个分组里面

默认组距为1

所在分组的下限为3.5

样本总数为10

4分组里有5个数

小于3.5的有4个数

所以中位数为:3.5+(10/2-4)/5*1=3.5+1/5=3.7

mode(data)函数

mode(data) 函数用于计算一组数据的众数,即在数据中出现次数最多的数。例如:

>>> statistics.mode([1, 1, 2, 3, 3, 3, 3, 4])
3
>>> statistics.mode(["red", "blue", "blue", "blue", "green", "green", "red"])
'blue'

总结

本节给大家介绍了 Python 中 statistics 模块的常用操作,在实际开发中方便对数据进行灵活的处理,对于实现数据统计的功能提供了支撑。

示例代码: Python-100-days-day043

以上所述是小编给大家介绍的详解python statistics模块及函数用法,希望对大家有所帮助!

Python 相关文章推荐
python利用lxml读写xml格式的文件
Aug 10 Python
Python 带有参数的装饰器实例代码详解
Dec 06 Python
python调用百度地图WEB服务API获取地点对应坐标值
Jan 16 Python
用Python PIL实现几个简单的图片特效
Jan 18 Python
如何在Django中添加没有微秒的 DateTimeField 属性详解
Jan 30 Python
Django框架自定义session处理操作示例
May 27 Python
简单分析python的类变量、实例变量
Aug 23 Python
Python实现TCP探测目标服务路由轨迹的原理与方法详解
Sep 04 Python
Python argparse模块使用方法解析
Feb 20 Python
Pycharm2020.1安装无法启动问题即设置中文插件的方法
Aug 07 Python
Pycharm的Available Packages为空的解决方法
Sep 18 Python
5行Python代码实现一键批量扣图
Jun 29 Python
在 Jupyter 中重新导入特定的 Python 文件(场景分析)
Oct 27 #Python
python自动结束mysql慢查询会话的实例代码
Oct 27 #Python
python实现输入任意一个大写字母生成金字塔的示例
Oct 27 #Python
python 爬虫百度地图的信息界面的实现方法
Oct 27 #Python
python用类实现文章敏感词的过滤方法示例
Oct 27 #Python
通过字符串导入 Python 模块的方法详解
Oct 27 #Python
python实现树的深度优先遍历与广度优先遍历详解
Oct 26 #Python
You might like
php数组查找函数总结
2014/11/18 PHP
ioncube_loader_win_5.2.dll的错误解决方法
2015/01/04 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
2016/12/12 PHP
PHP+Redis事务解决高并发下商品超卖问题(推荐)
2020/08/03 PHP
js apply/call/caller/callee/bind使用方法与区别分析
2009/10/28 Javascript
JS模块与命名空间的介绍
2013/03/22 Javascript
js输入框邮箱自动提示功能代码实现
2013/12/10 Javascript
jQuery通过写入cookie实现更换网页背景的方法
2016/04/15 Javascript
VueJs组件prop验证简单介绍
2017/09/12 Javascript
详解在React.js中使用PureComponent的重要性和使用方式
2018/07/10 Javascript
详解JavaScript 中 if / if...else...替换方式
2018/07/15 Javascript
基于Vue实现关键词实时搜索高亮显示关键词
2018/07/21 Javascript
layui使用表格渲染获取行数据的例子
2019/09/13 Javascript
解决elementui表格操作列自适应列宽
2020/12/28 Javascript
[53:20]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 VG vs OG
2018/04/03 DOTA
简单介绍Python的轻便web框架Bottle
2015/04/08 Python
python用10行代码实现对黄色图片的检测功能
2015/08/10 Python
python中pygame针对游戏窗口的显示方法实例分析(附源码)
2015/11/11 Python
分析python请求数据
2018/08/19 Python
python启动应用程序和终止应用程序的方法
2019/06/28 Python
Django使用uwsgi部署时的配置以及django日志文件的处理方法
2019/08/30 Python
python简单的三元一次方程求解实例
2020/04/02 Python
python基于exchange函数发送邮件过程详解
2020/11/06 Python
CSS改变网页中鼠标选中文字背景颜色例子
2014/04/23 HTML / CSS
年度考核自我鉴定
2014/02/02 职场文书
教师师德反思材料
2014/02/15 职场文书
单位工程竣工验收方案
2014/03/16 职场文书
《会走路的树》教后反思
2014/04/19 职场文书
企业安全标语
2014/06/07 职场文书
“四风”问题自我剖析材料思想汇报
2014/09/23 职场文书
2014年防汛工作总结
2014/12/08 职场文书
清明节寄语2015
2015/03/23 职场文书
高一军训感想
2015/08/07 职场文书
维护民族团结心得体会2016
2016/01/15 职场文书
MySQL里面的子查询的基本使用
2021/08/02 MySQL
安装harbor作为docker镜像仓库的问题
2022/06/14 Servers