【问题标题】:Creating a plot of frequency of items in a list in python [duplicate]在python中创建列表中项目的频率图[重复]
【发布时间】:2019-09-17 16:58:15
【问题描述】:

我正在尝试获取字符列表:

['a','a','b','c','c']

并生成一个图表,其中 x 轴作为 char,y 轴作为该列表中有多少个。

【问题讨论】:

  • 你已经尝试了什么?帮助一些起点更容易。

标签: python list plot


【解决方案1】:

使用pandas,统计出现次数,然后制作条形图:

from collections import Counter
import pandas

data = ['a','a','b','c','c']
count = Counter(data)
df = pandas.DataFrame.from_dict(count, orient='index')
df.plot(kind='bar')

【讨论】:

  • 大声笑,我现在做了同样的事情,有点不同,我在等你:-)
  • 有点。我基本上得到了确切的答案, kind='hist' 并且想知道为什么它不起作用
  • 也许我的值得+1?
  • 好了,+1 了
【解决方案2】:

你可以使用pandas

import pandas as pd
l = ['a','a','b','c','c']
df = pd.DataFrame({'freq': l})
df.groupby('freq', as_index=False).size().plot(kind='bar')
plt.show()

pandas 是一个大型库,它可以处理大量数据以及绘图(不过,它从 matplotlib 使用它,所以你看到 plt.show (matplotlib.pyplot.show()),在这里你看到一个如何使用它的示例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-31
    • 1970-01-01
    • 2019-06-06
    • 2021-07-03
    • 2013-10-05
    • 2013-05-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多