statistics模块为具有数字特性的数据提供数学统计计算函数,若无明确指明,支持的数据类型 intfloatdecimal.Decimal 和 fractions.Fraction。其它类型暂不支持,混合类型也不能独立操作,如果 输入的数据是混合类型,必须用map()函数转换成可识别的类型map(float, inpud_data)。 statistics模块中的统计函数有:

平均&中位数函数(平均值、中位数等)

函数 释义
statistic.mean() 返回数据的算术平均值,如果数据为空,则会触发StatisticsError。算术平均值容易受到异常值的影响,并不是一个稳定的估量值。
statistic.harmonic_mean() 返回调和优化平均值。调和平均值又被称为倒数平均值,是算术平均值的倒数。计算形式如下:数据a,b,c 的调和平均值为$\dfrac{3}{\dfrac{1}{a} + \dfrac{1}{b} + \dfrac{1}{c}}$ 如果数据为空,或数据存在负数,同样会触发StatisticsError
statistic.median() 返回数据的中位数,如果数据总和为偶数,则返回中间两个数字的平均值。中位数比较稳定,不太容易受异常数据的影响。如果数据为空,同样会触发StatisticsError
statistic.median_low() 返回较低平均值,当数据总数为偶数时,取中间位置较小的数值
statistic.median_high() 返回较高平均值,当数据总数为偶数时,取中间位置较大的数值
statistic.median_grouped(data, interval = 1) 返回分组连续数据的中位数,以50%位数计算,interval代表计算间距,默认为1
statistic.media_mode() 返回出现频率最高的数值
>>> import statistics
>>> statistics.mean([23.4,47.2,56.45,65.8])
48.2125
>>> statistics.harmonic_mean([2.4, 3.6, 12.3])
3.867248908296943
>>> statistics.median([12,4,6,8,9,14,35])
9
>>> statistics.median([1,3,5,7])
4.0
>>> statistics.median_low([1,3,5,7])
3
>>> statistics.median_high([1,3,5,7])
5
>>> statistics.median_grouped([52,52,53,54])
52.5
>>> statistics.median_grouped([1,2,2,3,4,4,4,4,4,5])
3.7
>>> statistics.median_grouped([1,3,5,7], interval =1)
4.5
>>> statistics.median_grouped([1,3,5,7], interval = 2)
4.0
>>> statistics.mode([1,1,2,3,3,3,3,4])
3
>>> statistics.mode(['red','blue','red','green','blue','red','green','blue','red'])
'red'

分布函数(方差、标准差等)

函数 释义
statistics.pstdev(data, mu=None) 返回数据的总体标准差,mu为平均值,如果给值则用指定的数值,如果没有指定,则自动计算
statistics.pvariance(data, mu=None) 返回数据的总体方差,mu为平均值,如果指定数据则用给定值,如果未给出,则自动计算
statistics.stdev(data, xbar=None) 返回数据的样品标准差,xbar如果指定则用给的值,如果没有指定则自动计算。
statistics.variance(data, xbar=None) 返回样本方差,如果指定xbar则用给的值,如果没有给出,则自动计算
>>> statistics.pstdev([1.5, 2.5, 2.5, 2.75, 3.25, 4.75])
0.986893273527251
>>> statistics.pvariance([1.5, 2.5, 2.5, 2.75, 3.25, 4.75])
0.9739583333333334
>>> statistics.stdev([1.5, 2.5, 2.5, 2.75, 3.25, 4.75])
1.0810874155219827
>>> statistics.variance([1.5, 2.5, 2.5, 2.75, 3.25, 4.75])
1.16875

有关Python针对数据的运算各个类型数据的运算和相关的算术模块整理完毕,正因为Python对数据运算处理的庞大,使得Python在数据分析之中占有重要的位置。同时有许多外置框架将Python数据结构改良和对统计模块的扩展,例如Numpy、Pandas等,非常方便数据清洗。

Python运算(五)统计statistic模块相关推荐

  1. Python炫技操作:模块重载的五种方法

    作者 | 写代码的明哥 来源 | Python编程时光 环境准备 新建一个 foo 文件夹,其下包含一个 bar.py 文件 $ tree foofoo└── bar.py 0 directories ...

  2. Python第五天 文件访问 for循环访问文件 while循环访问文件 字符串的startswith函数和split函数 linecache模块...

    Python第五天   文件访问    for循环访问文件    while循环访问文件   字符串的startswith函数和split函数  linecache模块 目录 Pycharm使用技巧( ...

  3. 算法笔记(五)数论、进制、位运算、统计抽样、计算几何

    layout: post title: 算法笔记(五)数论.进制.位运算.统计抽样.计算几何 description: 算法笔记(五)数论.进制.位运算.统计抽样.计算几何 tag: 算法 算法笔记( ...

  4. 【Python】8000字:Python时间系列之datetime模块

    公众号:尤而小屋 作者:Peter 编辑:Peter 大家好,我是Peter~ 在上篇Python或Pandas时间序列的文章中Peter详细介绍了time模块,本文中重点介绍的是datetime模块 ...

  5. 【python第五章——函数】

    python第五章--函数 第五章--函数 5.1函数概述 5.2 函数进阶 下面部分之后再写 5.3函数习题(一些小例子) 第五章--函数 5.1函数概述 快速入门: #定义函数 def func( ...

  6. python日志处理(logging模块)

    文章非原创,搬运自@云游道士博客: https://www.cnblogs.com/yyds/p/6901864.html 另外,这篇文章可以作为参考: https://www.jianshu.com ...

  7. 《疯狂Python讲义》之常见模块

    sys sys模块中常用的属性和函数: sys.argv:获取运行Python程序的命令行参数 sys.byteorder:显示本地字节序的指示符 sys.copyright:该属性返回与Python ...

  8. python编程时常用的模块

    python之所以能在编程语言排行榜中占据榜首,处理语言自身的特点之外还在于其丰富的应用库,涵盖了计算机应用领域的方方面面. 一.算法设计 Python的数据结构,算法和设计模式的实现.另请参阅真棒算 ...

  9. [Python图像识别] 五十.Keras构建AlexNet和CNN实现自定义数据集分类详解

    该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门.OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子.图像增强技术.图像分割等,后期结合深度学习研究图像识别 ...

  10. python 按需加载_基于python的opcode优化和模块按需加载机制研究(学习与个人思路)(原创)...

    基于python的opcode优化和模块按需加载机制研究(学习与思考) 姓名:XXX 学校信息:XXX 主用编程语言:python3.5 文档转换为PDF有些图片无法完全显示,请移步我的博客查看 完成 ...

最新文章

  1. 面试官:Java反射是什么?我回答不上来!
  2. 深度学习核心技术精讲100篇(二十八)-由浅入深概览机器学习优化算法
  3. taro压缩_Taro 如何开始微信小程序的开发
  4. python 浏览器,轻量级Python Web浏览器
  5. 2018蓝桥杯省赛---java---B---4(测试次数)
  6. android指纹java_Android
  7. 继承关系 c# 1613704854
  8. 小程序自定义tabBar(类似咸鱼)
  9. CRM客户关系管理系统商业项目视频课程-赖国荣-专题视频课程
  10. 将手机浏览器下载的.ts格式的视频片段合并的方法
  11. 黑群晖二合一已损毁_手动修复黑群晖已损毁磁盘空间
  12. 【C++】队列优先队列详解——deque.queue.priority_queue
  13. 使用docker构架服务 jekyll 和 java应用程序
  14. java 接口自动化
  15. Discord机器人开发
  16. iOS 拦截系统自带的Pop事件
  17. Endnote 参考文献输出格式GB/T 7714的Style定义写法
  18. IBM-IPD研发管理职能
  19. 雷电模拟器启动报错:opengl版本过低
  20. java构建网页_从网页搭建入门Java Web2018版

热门文章

  1. 光辉岁月--beyond 献给麦德拉
  2. TIM_SetCompare1(TIM14,625); 但是这个办法对TIM4行不通。TIM4使用TIM_OCInitStructure.TIM_Pulse = dutyCycle;
  3. 计算机上机日志如何查找,如何查看金蝶KIS记账王上机日志
  4. 远程操作Linux图形界面
  5. 报纸样式网页html css,报纸杂志HTML模板
  6. 用可视化解构BERT,我们从上亿参数中提取出了6种直观模式
  7. Dubbo负载均衡策略之最小活跃策略
  8. 时间复杂度和空间复杂度
  9. Gitter:高颜值GitHub小程序客户端诞生记
  10. 中国最具竞争力的十大调查研究咨询公司