首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用Python中的计数器()构建直方图?

使用Python中的计数器()构建直方图?
EN

Stack Overflow用户
提问于 2018-06-11 23:44:08
回答 2查看 0关注 0票数 0

我看到了另一个我可以用的问题Counter()若要计数一组字符串中出现的次数,请执行以下操作。所以如果我有['A','B','A','C','A','A']我得到Counter({'A':3,'B':1,'C':1})。但是现在,我如何利用这些信息来构建直方图呢?

EN

回答 2

Stack Overflow用户

发布于 2018-06-12 08:00:10

对于你的数据,可能最好使用条形图而不是直方图。请查看以下代码:

from collections import Counter
import numpy as np
import matplotlib.pyplot as plt


labels, values = zip(*Counter(['A','B','A','C','A','A']).items())

indexes = np.arange(len(labels))
width = 1

plt.bar(indexes, values, width)
plt.xticks(indexes + width * 0.5, labels)
plt.show()

结果:

票数 0
EN

Stack Overflow用户

发布于 2018-06-12 09:01:17

In [24]: import numpy as np

In [25]: from pandas import Series

In [27]: sample = np.random.choice(['a', 'b'], size=10)

In [28]: s = Series(sample)

In [29]: s
Out[29]:
0    a
1    b
2    b
3    b
4    a
5    b
6    b
7    b
8    b
9    a
dtype: object

In [30]: vc = s.value_counts()

In [31]: vc
Out[31]:
b    7
a    3
dtype: int64

In [32]: vc = vc.sort_index()

In [33]: vc
Out[33]:
a    3
b    7
dtype: int64

In [34]: vc.plot(kind='bar')

其结果是:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100005310

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档