import pandas as pd

# 读取数据生成DataFrame数据类型
df = pd.read_csv('score.csv', header=None, names=['name', 'id', 'course', 'score'])

# (1)计算并显示不及格学生姓名,学号,课程名,成绩。
fail = df[df['score'] < 60]  # 筛选不及格成绩的数据行
fail[['name', 'id', 'course', 'score']].reset_index(drop=True)  # 输出不及格学生信息

# (2)计算并输出数据集中各课程的平均成绩。
avg_score = df.groupby('course')['score'].mean()  # 按课程名分组计算平均成绩
print(avg_score)

# (3)计算显示英语成绩最低分学生信息。
min_english = df[df['course'] == '英语']['score'].idxmin()  # 找到英语成绩最低分的数据行
df.loc[min_english, ['name', 'id', 'course', 'score']]  # 输出英语成绩最低分学生信息

使用 Pandas 进行学生成绩分析

本教程将带你使用 Python Pandas 库对学生成绩数据进行分析。

步骤:

  1. 读取数据: 使用 pd.read_csv() 函数读取名为 score.csv 的文件,并将其转换为 DataFrame 数据类型。
  2. 筛选不及格学生信息:使用条件语句 df['score'] < 60 筛选出不及格成绩的学生信息,并使用 [['name', 'id', 'course', 'score']].reset_index(drop=True) 获取姓名、学号、课程名和成绩。
  3. 计算课程平均成绩:使用 groupby() 函数对 course 列进行分组,然后使用 mean() 函数计算每个课程的平均成绩。
  4. 查找英语成绩最低分学生信息:使用 df[df['course'] == '英语']['score'].idxmin() 找到英语成绩最低分的数据行的索引,然后使用 df.loc[min_english, ['name', 'id', 'course', 'score']] 获取该学生的姓名、学号、课程名和成绩。

代码示例:

import pandas as pd

# 读取数据生成DataFrame数据类型
df = pd.read_csv('score.csv', header=None, names=['name', 'id', 'course', 'score'])

# (1)计算并显示不及格学生姓名,学号,课程名,成绩。
fail = df[df['score'] < 60]  # 筛选不及格成绩的数据行
print(fail[['name', 'id', 'course', 'score']].reset_index(drop=True))  # 输出不及格学生信息

# (2)计算并输出数据集中各课程的平均成绩。
avg_score = df.groupby('course')['score'].mean()  # 按课程名分组计算平均成绩
print(avg_score)

# (3)计算显示英语成绩最低分学生信息。
min_english = df[df['course'] == '英语']['score'].idxmin()  # 找到英语成绩最低分的数据行
print(df.loc[min_english, ['name', 'id', 'course', 'score']])  # 输出英语成绩最低分学生信息

通过以上步骤,你可以使用 Pandas 库轻松地对学生成绩数据进行分析。

注意:

  • 以上代码示例中,假设你已经将成绩数据保存为名为 score.csv 的文件,并且该文件位于与代码相同的目录中。
  • 你可以根据实际情况修改代码中的文件名和数据列名。
  • 在实际应用中,你可能需要进行更多的数据清洗和处理,以确保数据的准确性和完整性。

希望本教程能够帮助你更好地理解 Pandas 库的用法,并进行学生成绩分析。

Python Pandas 数据分析实战:学生成绩分析

原文地址: https://www.cveoy.top/t/topic/opND 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录