如何在x轴上绘制带有时间的分类计数图?

时间:2019-11-05 06:30:38

标签: python-3.x pandas

我想计算一个变量中类别的出现次数,并根据时间进行绘制。 数据如下:

Date_column    Categorical_variable
20-01-2019            A
20-01-2019            B
20-01-2019            C
21-01-2019            A
21-02-2019            A
22-02-2019            B
........................
23-04-2020            A

我想证明在1月中我有1次B / C,而2次是A。在2月,我有1次A / B,依此类推。可以堆叠条形图以了解出现的总数。

我已经很接近了。但是还无法从中绘制情节。

df['Date_column'].groupby([df.Date_column.dt.year, df.Date_column.dt.month]).agg('count')

另一种方法是将日期更改为每月的1号,然后分组以对发生的次数进行计数。但是我无法从中绘制情节。

df.groupby(df['Date_column'], df['Categorical_variable']).count()

An example of what I need. This is not according to the data. Timeline will run into few more years

1 个答案:

答案 0 :(得分:1)

crosstabSeries.dt.to_period一起使用:

df['Date_column'] = pd.to_datetime(df['Date_column'])


df = pd.crosstab(df['Date_column'].dt.to_period('m'), df['Categorical_variable'])


df.plot.bar()
相关问题