实训 实训1分析学生 考试成绩特征的分布与分散情况 1.训练要点 (1)掌握pyplot的基础语法, (2)掌握饼图的绘制方法 (3)掌握箱线图的绘制方法 2.需求说明 在期末多试后,学校对学生的期来试成绩及其他特征信息进行了统计,并存为学生成绩特征关系表(student gndexix)学生成绩特征关系表共有7个特征,分别为性别、自我效能感、考试课程准备情况、数学成绩、阅读成绩、写作成绩和总成绩,其部分数据如表5-40所示。为了解学生考试总成绩的分布情况,将总成绩按0”150、150~ 200 .200 250、 250~300区间划分为“不及格”“及格”“良好”“优秀”4个等级,通过绘制饼图在看各区间学生人数比例,并通过绘制箱线图在看学生3项单科成绩的分散情况。 表5-40学生成绩特征关系表部分数据 性别 自我效能感 考试课程 准备情况 数学成绩 阅读成绩 写作成绩 总成绩 女 中 未完成 7 72 74 218 女 高 完成 6 90 88 247 女 高 未完成 90 95 )3 278 男 未完成 47 57 14 148 男 中 未完成 7 78 '5 229 3.实现步骤 (1)使用pandas库读取学生名试成绩数据。 绩分布饼图,2)将学生考试总皮绩分为4个区间,计算各区间下的学生人数, 绘制学生考试总成(3)规取学生3项单科成绩的数据,给制学生各项考试成绩分散情况箱线图,实训2(4) 分析学生考试总成绩的分布情况和3项单科成绩的分散情况
时间: 2023-11-28 07:47:47 浏览: 586
实训1分析学生考试成绩特征的分布与分散情况
1. 导入需要的库和数据
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取学生成绩特征关系表
data = pd.read_excel('student.xlsx')
```
2. 绘制学生考试总成绩分布饼图
```python
# 将总成绩按区间划分为“不及格”“及格”“良好”“优秀”4个等级
bins = [0, 150, 200, 250, 300]
labels = ['不及格', '及格', '良好', '优秀']
data['grade'] = pd.cut(data['总成绩'], bins=bins, labels=labels)
# 计算各区间下的学生人数
counts = data['grade'].value_counts()
# 绘制饼图
plt.pie(counts, labels=counts.index, autopct='%1.1f%%')
plt.title('学生考试总成绩分布')
plt.show()
```
3. 绘制学生各项考试成绩分散情况箱线图
```python
# 取出学生3项单科成绩的数据
scores = data[['数学成绩', '阅读成绩', '写作成绩']]
# 绘制箱线图
plt.boxplot(scores.values, labels=scores.columns)
plt.title('学生各项考试成绩分散情况')
plt.show()
```
4. 分析学生考试总成绩的分布情况和各项单科成绩的分散情况
通过饼图可以看出,大部分学生的总成绩都在良好和及格之间,优秀的学生比例较少。
通过箱线图可以看出,数学成绩的分散情况相对较大,阅读和写作成绩的分散情况相对较小。
阅读全文