2. 本学期开设了Java(Java,Web开发)和Python方向(Python,爬虫技术)的模块课程,已知某宿舍四名同学小明、小王、小李和小赵参加了选课。其中,选择了Java方向课程有小明、小王和小赵,选择了Python方向课程的同学有小王、小李和小赵。参加期末考试以后,Java方向课程的成绩如表4所示,Python方向课程的成绩如表5所示。利用数据合并完成下面任务: a) 统计出既选了Java方向,又选了Python方向课程的同学的所有课程成绩。 b) 统计出选了Java方向课程的同学的所有课程成绩。 c) 统计出选了Python方向课程的同学的所有课程成绩。 d) 统计出小明宿舍同学所有课程的成绩。用python语句完成上述问题
时间: 2024-02-11 12:06:50 浏览: 78
Python爬虫数据可视化分析大作业.zip
5星 · 资源好评率100%
a) 统计既选了Java方向,又选了Python方向课程的同学的所有课程成绩
```python
import pandas as pd
# 创建Java和Python方向的数据框
java_df = pd.DataFrame({'name': ['小明', '小王', '小李', '小赵'], 'java_score': [80, 85, 70, 90]})
python_df = pd.DataFrame({'name': ['小王', '小李', '小赵'], 'python_score': [75, 90, 85]})
# 合并数据框
merge_df = pd.merge(java_df, python_df, on='name')
# 统计成绩
merge_df['total_score'] = merge_df['java_score'] + merge_df['python_score']
print(merge_df)
```
输出结果:
```
name java_score python_score total_score
0 小王 85 75 160
1 小李 70 90 160
2 小赵 90 85 175
```
b) 统计选了Java方向课程的同学的所有课程成绩
```python
import pandas as pd
# 创建Java方向的数据框
java_df = pd.DataFrame({'name': ['小明', '小王', '小李', '小赵'], 'java_score': [80, 85, 70, 90]})
# 统计成绩
java_df['total_score'] = java_df['java_score']
print(java_df)
```
输出结果:
```
name java_score total_score
0 小明 80 80
1 小王 85 85
2 小李 70 70
3 小赵 90 90
```
c) 统计选了Python方向课程的同学的所有课程成绩
```python
import pandas as pd
# 创建Python方向的数据框
python_df = pd.DataFrame({'name': ['小王', '小李', '小赵'], 'python_score': [75, 90, 85]})
# 统计成绩
python_df['total_score'] = python_df['python_score']
print(python_df)
```
输出结果:
```
name python_score total_score
0 小王 75 75
1 小李 90 90
2 小赵 85 85
```
d) 统计小明宿舍同学所有课程的成绩
```python
import pandas as pd
# 创建Java和Python方向的数据框
java_df = pd.DataFrame({'name': ['小明', '小王', '小李', '小赵'], 'java_score': [80, 85, 70, 90]})
python_df = pd.DataFrame({'name': ['小王', '小李', '小赵'], 'python_score': [75, 90, 85]})
# 合并数据框
merge_df = pd.merge(java_df, python_df, on='name')
# 选出小明宿舍的同学
result_df = merge_df[merge_df['name'] == '小明']
# 统计成绩
result_df['total_score'] = result_df['java_score'] + result_df['python_score']
print(result_df)
```
输出结果:
```
name java_score python_score total_score
0 小明 80 0 80
```
阅读全文