详解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为mysql实现restful接口
Jan 05 Python
Python中%是什么意思?python中百分号如何使用?
Mar 20 Python
Python去除、替换字符串空格的处理方法
Apr 01 Python
python3个性签名设计实现代码
Jun 19 Python
python使用rpc框架gRPC的方法
Aug 24 Python
两个元祖T1=('a', 'b'),T2=('c', 'd')使用匿名函数将其转变成[{'a': 'c'},{'b': 'd'}]的几种方法
Mar 05 Python
Python进阶之使用selenium爬取淘宝商品信息功能示例
Sep 16 Python
Django实现基于类的分页功能
Oct 31 Python
python实现异常信息堆栈输出到日志文件
Dec 26 Python
利用Python计算KS的实例详解
Mar 03 Python
python新手学习可变和不可变对象
Jun 11 Python
浅谈anaconda python 版本对应关系
Oct 07 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
从零开始 教你如何搭建Discuz!4.1论坛
2006/07/07 PHP
PHP字符过滤函数去除字符串最后一个逗号(rtrim)
2013/03/26 PHP
js 事件截取enter按键页面提交事件示例代码
2014/03/04 Javascript
快速学习jQuery插件 Cookie插件使用方法
2015/12/01 Javascript
详解探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 构建记事本应用
2017/06/16 Javascript
mpvue项目中使用第三方UI组件库的方法
2018/09/30 Javascript
详解Js里的for…in和for…of的用法
2019/03/28 Javascript
一篇文章介绍redux、react-redux、redux-saga总结
2019/05/23 Javascript
javascript设计模式 ? 备忘录模式原理与用法实例分析
2020/04/21 Javascript
JS实现时间校验的代码
2020/05/25 Javascript
微信小程序实现购物车小功能
2020/12/30 Javascript
react项目从新建到部署的实现示例
2021/02/19 Javascript
Python的批量远程管理和部署工具Fabric用法实例
2015/01/23 Python
Python工程师面试题 与Python Web相关
2016/01/14 Python
python 计算数组中每个数字出现多少次--“Bucket”桶的思想
2017/12/19 Python
Pyqt5如何让QMessageBox按钮显示中文示例代码
2019/04/11 Python
利用python实现冒泡排序算法实例代码
2019/12/01 Python
python3.8动态人脸识别的实现示例
2020/09/21 Python
如何查看python关键字
2021/01/17 Python
html5使用html2canvas实现浏览器截图的示例
2017/08/31 HTML / CSS
前端canvas动画如何转成mp4视频的方法
2019/06/17 HTML / CSS
浅谈Html5移动端ios/Android兼容性总结
2018/06/01 HTML / CSS
SEPHORA丝芙兰捷克官网:购买香水、化妆品和护肤品
2018/11/26 全球购物
Europcar意大利:汽车租赁
2019/07/07 全球购物
感恩节红领巾广播稿
2014/02/11 职场文书
学校综治宣传月活动总结
2014/07/02 职场文书
公司离职证明样本
2014/09/13 职场文书
2014国庆节幼儿园亲子活动方案
2014/09/16 职场文书
代收款委托书范本
2014/10/01 职场文书
带刀到教室的检讨书
2014/10/04 职场文书
餐饮食品安全责任书
2015/01/29 职场文书
2015年七夕爱情寄语
2015/03/24 职场文书
食堂卫生管理制度
2015/08/04 职场文书
2016年第32个教师节致辞
2015/11/26 职场文书
详解Oracle数据库中自带的所有表结构(sql代码)
2021/11/20 Oracle
《LOL》“克隆大作战”久违归来 幻灵战队皮肤上线
2022/04/03 其他游戏