绘制两行,按年份统计发生的次数* Python *

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了绘制两行,按年份统计发生的次数* Python *相关的知识,希望对你有一定的参考价值。

我是python的新手,

[我正在尝试绘制学区每年提供的2门特定课程的数量。我已按年份对数据进行了分组,并将一个类别的类别更改为0-,将另一个类别的类别更改为1-。理想情况下,我需要将x轴作为年份,将y轴作为给定年份发生0/1的次数。]

我对python还是很陌生,我试图绘制一个学区每年提供的2门特定课程的数量。我已经按年份对数据进行了分组,并将一个类别的类别更改为0-,并且将1- ...

答案
使用pandas.DataFrame.groupby

import pandas as pd import random import matplotlib.pyplot as plt import seaborn as sns # data random.seed(365) data = 'class': [random.choice(['A.P. Economics - Macro', 'A.P. Economics - Micro']) for _ in range(100)], 'year': [random.choice([*range(2000, 2021)]) for _ in range(100)], 'class_code': [random.choice([0, 1]) for _ in range(100)] # create dataframe df = pd.DataFrame(data) # groupby, count and transform back to dataframe t = pd.DataFrame(df.groupby(['class', 'year', 'class_code'])['class_code'].count()).rename(columns='class_code': 'code_count').reset_index(level=0) # plot with seaborn sns.barplot(x=t.index, y='code_count', data=t, hue='class') plt.xticks(rotation=90) plt.legend(loc='upper right') plt.show()

以上是关于绘制两行,按年份统计发生的次数* Python *的主要内容,如果未能解决你的问题,请参考以下文章