没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
教你利用教你利用Python玩转玩转histogram直方图的五种方法直方图的五种方法
主要给大家介绍了关于如何利用Python玩转histogram直方图的五种方法,文中通过示例代码介绍的非常详细,
对大家学习或者使用python具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
直方图直方图
直方图是一个可以快速展示数据概率分布的工具,直观易于理解,并深受数据爱好者的喜爱。大家平时可能见到最多就是
matplotlib,seaborn 等高级封装的库包,类似以下这样的绘图。
本篇博主将要总结一下使用Python绘制直方图的所有方法,大致可分为三大类(详细划分是五类,参照文末总结):
纯Python实现直方图,不使用任何第三方库
使用Numpy来创建直方图总结数据
使用matplotlib,pandas,seaborn绘制直方图
下面,我们来逐一介绍每种方法的来龙去脉。
纯纯Python实现实现histogram
当准备用纯Python来绘制直方图的时候,最简单的想法就是将每个值出现的次数以报告形式展示。这种情况下,使用 字典 来
完成这个任务是非常合适的,我们看看下面代码是如何实现的。
>>> a = (0, 1, 1, 1, 2, 3, 7, 7, 23)
>>> def count_elements(seq) -> dict:
... """Tally elements from `seq`."""
... hist = {}
... for i in seq:
... hist[i] = hist.get(i, 0) + 1
... return hist
>>> counted = count_elements(a)
>>> counted
{0: 1, 1: 3, 2: 1, 3: 1, 7: 2, 23: 1}
我们看到,count_elements() 返回了一个字典,字典里出现的键为目标列表里面的所有唯一数值,而值为所有数值出现的频率次
数。hist[i] = hist.get(i, 0) + 1 实现了每个数值次数的累积,每次加一。
实际上,这个功能可以用一个Python的标准库 collection.Counter 类来完成,它兼容Pyhont 字典并覆盖了字典的 .update() 方法。
>>> from collections import Counter
>>> recounted = Counter(a)
>>> recounted
Counter({0: 1, 1: 3, 3: 1, 2: 1, 7: 2, 23: 1})
可以看到这个方法和前面我们自己实现的方法结果是一样的,我们也可以通过 collection.Counter 来检验两种方法得到的结果是否
相等。
资源评论
weixin_38690739
- 粉丝: 9
- 资源: 970
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功