首页 > 解决方案 > 绘制分类数据的直方图

问题描述

我有一个包含两列的数据集,如下所示:

    index   Year
0   5   <2012
1   8   >=2012
2   9   >=2012
3   10  <2012
4   15  <2012
... ... ...
171 387 >=2012
172 390 <2012
173 398 <2012
174 403 >=2012
175 409 <2012

我想将它绘制在直方图中。我试过了

plt.style.use('ggplot')

df.groupby(['Year'])\
      .Year.count().unstack().plot.bar(legend=True)

plt.show()

但我有一个错误:AttributeError: 'CategoricalIndex' object has no attribute 'remove_unused_levels'对于

df.groupby(['Year'])\
          .Year.count().unstack().plot.bar(legend=True)

我认为这是因为我使用的是分类值。任何帮助将不胜感激。

标签: pythonpandasmatplotlib

解决方案


尝试:

plt.style.use('ggplot')
df.groupby(["Year"])["Year"].agg("count").plot.bar();

在此处输入图像描述

或者:

plt.hist(df["Year"]);

在此处输入图像描述


推荐阅读