pandas,对数据框中的学生成绩进行评级并过滤出成绩大于等于80的学生
时间: 2024-02-09 21:13:18 浏览: 75
学生平均成绩大于80同表sql
可以使用 Pandas 中的 apply() 函数对数据框中的每一行进行评级,并使用布尔索引(Boolean Indexing)过滤出成绩大于等于80的学生。假设你有一个数据框 df,其中包含了学生的成绩,你可以按照以下方式对每个学生的成绩进行评级,并过滤出成绩大于等于80的学生:
```python
import pandas as pd
# 读取数据框
df = pd.read_csv('your_file.csv')
# 定义评级函数
def grade(score):
if score >= 90:
return 'A'
elif score >= 80:
return 'B'
elif score >= 70:
return 'C'
elif score >= 60:
return 'D'
else:
return 'F'
# 对每个学生的成绩进行评级,并过滤出成绩大于等于80的学生
df['grade'] = df['score'].apply(grade)
df_80 = df[df['score'] >= 80]
# 打印数据框
print(df_80)
```
其中,`your_file.csv` 是你的数据框文件名,`score` 是数据框中成绩所在的列名,`grade` 是自定义的评级函数,`df['grade']` 表示新加一列名为 `grade` 的评级列,`df['score'].apply(grade)` 表示对 `df['score']` 列中的每个成绩应用 `grade` 函数进行评级,`df[df['score'] >= 80]` 表示过滤出成绩大于等于80的学生。
阅读全文