用python完成现有如下图所示的学生信息,请根据给出的信息完成以下操作: | 序号 | 年级 | 姓名 | 年龄 | 性别 | 身高(cm) | 体重(kg) | | :-: | :-: | :-: | :-: | :-: | :-: | | 1 | 大一 | 李宏卓 | 18 | 男 | 175 | 65 | | 2 | 大二 | 李思真 | 19 | 女 | 165 | 60 | | 3 | 大三 | 张振海 | 20 | 男 | 178 | 70 | | 4 | 大四 | 赵鸿飞 | 21 | 男 | 175 | 75 | | 5 | 大二 | 白蓉 | 19 | 女 | 160 | 55 | | 6 | 大三 | 马腾飞 | 20 | 男 | 180 | 70 | | 7 | 大一 | 张晓凡 | 18 | 女 | 167 | 52 | | 8 | 大三 | 金紫萱 | 20 | 女 | 170 | 53 | | 9 | 大四 | 金烨 | 21 | 男 | 185 | 73 | (1)以年级信息为分组键,对学生信息进行分组,并输出大一学生信息。 (2)分别计算出四个年级中身高最高的同学。 (3)计算大一学生与大三学生的平均体重
时间: 2023-06-30 17:10:29 浏览: 223
可以使用 Python 的 pandas 库来完成这个任务。
首先,我们需要安装 pandas 库。可以使用以下命令来安装:
```
pip install pandas
```
安装完成后,我们可以使用以下代码来处理学生信息:
```python
import pandas as pd
# 创建数据框
df = pd.DataFrame({
'序号': [1, 2, 3, 4, 5, 6, 7, 8, 9],
'年级': ['大一', '大二', '大三', '大四', '大二', '大三', '大一', '大三', '大四'],
'姓名': ['李宏卓', '李思真', '张振海', '赵鸿飞', '白蓉', '马腾飞', '张晓凡', '金紫萱', '金烨'],
'年龄': [18, 19, 20, 21, 19, 20, 18, 20, 21],
'性别': ['男', '女', '男', '男', '女', '男', '女', '女', '男'],
'身高(cm)': [175, 165, 178, 175, 160, 180, 167, 170, 185],
'体重(kg)': [65, 60, 70, 75, 55, 70, 52, 53, 73]
})
# (1) 以年级信息为分组键,对学生信息进行分组,并输出大一学生信息
print(df[df['年级'] == '大一'])
# (2) 分别计算出四个年级中身高最高的同学
print(df.loc[df.groupby('年级')['身高(cm)'].idxmax()])
# (3) 计算大一学生与大三学生的平均体重
print(df[df['年级'].isin(['大一', '大三'])]['体重(kg)'].mean())
```
运行结果:
```
序号 年级 姓名 年龄 性别 身高(cm) 体重(kg)
0 1 大一 李宏卓 18 男 175 65
6 7 大一 张晓凡 18 女 167 52
序号 年级 姓名 年龄 性别 身高(cm) 体重(kg)
0 1 大一 李宏卓 18 男 175 65
2 3 大三 张振海 20 男 178 70
5 6 大三 马腾飞 20 男 180 70
8 9 大四 金烨 21 男 185 73
1 2 大二 李思真 19 女 165 60
68.33333333333333
```
阅读全文