python怎么对学生dataframe(姓名,年龄、分数、专业)专业分组并计算各组成绩>75
时间: 2024-09-14 16:10:01 浏览: 37
Python 对DataFrame数据分组并排序并选择最优数据
在Python中,我们可以使用pandas库来处理DataFrame数据。如果你想要按照“专业”对DataFrame分组,并计算出每个专业里分数大于75的学生数量或平均分等统计信息,可以按照以下步骤操作:
```python
import pandas as pd
# 假设df是一个包含姓名、年龄、分数和专业的DataFrame
df = pd.DataFrame({
'姓名': ['张三', '李四', '王五', '赵六', ...],
'年龄': [20, 22, 21, 23, ...],
'分数': [85, 90, 76, 80, ...],
'专业': ['计算机科学', '数学', '计算机科学', '化学', ...]
})
# 按照'专业'列进行分组
grouped_df = df.groupby('专业')
# 计算分数大于75的学生数量或平均分
# 如果你想看每个专业有多少人分数大于75
num_high_scores = grouped_df['分数'].apply(lambda x: (x > 75).sum())
# 或者计算平均分数大于75的学生平均分
avg_above_seventy_five = grouped_df['分数'].apply(lambda x: x[x > 75].mean() if not x.empty else None)
# 结果存储在一个新的Series中
result = {'学生数量': num_high_scores, '平均分': avg_above_seventy_five}
print(result)
```
阅读全文