Python按照学校分组,对学生人数做累加求得每个学校学生使用的频次,最后对频次进行降序排名并将最终结果通过横向柱状图展示。
时间: 2024-09-19 14:17:13 浏览: 55
在Python中,你可以使用pandas库来处理数据,matplotlib或seaborn库来创建图形。以下是大致步骤:
1. **数据预处理**:
- 首先,你需要有一个包含学生信息的数据集,其中包含“学校”和“学生ID”的列。可以假设你已经有了一个DataFrame,例如df。
- 使用`df.groupby('学校')['学生ID'].count()`按学校分组并计算每个学校的总学生数。
2. **频次统计**:
- 对于每个学校的频次,上述操作已经完成了。结果将是一个Series,它的索引是学校名,值是学生人数。
3. **排序和绘制图表**:
- 使用`sort_values(ascending=False)`将结果降序排列,得到频次最高的学校列表。
- 使用matplotlib的`plt.barh()`函数创建一个水平柱状图,`x`轴表示频次,`y`轴表示学校名。示例代码可能像这样:
```python
plt.figure(figsize=(10, 6))
plt.barh(df['学校'].unique(), df.groupby('学校')['学生ID'].count().values, color='skyblue')
plt.title('学校学生分布按频次排序')
plt.xlabel('学生人数')
plt.ylabel('学校')
plt.show()
```
阅读全文
相关推荐

















