Python对给定数据集pandas_data.csv,完成如下题目(除pe成绩): (1)计算成绩的平均值,作为新的一列加入到原数据中。 (1)统计每个科目75分以上的人数。
时间: 2024-10-27 16:02:45 浏览: 24
pandas中read_csv、rolling、expanding用法详解
首先,让我们加载pandas_data.csv数据集,并使用pandas库来处理这个任务。假设数据集中有姓名、科目1、科目2、科目3等字段,而pe成绩不需要考虑。
```python
import pandas as pd
# 读取数据
pandas_data = pd.read_csv('pandas_data.csv')
# (1) 计算每个科目成绩的平均值并添加新列
average_scores = pandas_data.mean(numeric_only=True)
new_column_name = 'Average_Score'
pandas_data[new_column_name] = average_scores
# 如果数据中没有'Average_Score'列,那么这是结果
print("平均成绩已添加至数据的最后一列:", new_column_name)
# (2) 统计每个科目75分以上的学生人数
high_score_counts = pandas_data[pandas_data.iloc[:, 1:].gt(75).all(axis=1)].shape[0]
subject_columns = pandas_data.columns[1:-1] # 排除姓名和新添加的平均分列
for subject in subject_columns:
print(f"科目 {subject} 75分及以上的学生人数:{high_score_counts}")
```
这段代码首先读取CSV文件,然后计算每个科目的平均值并创建一个新的列。接着,它筛选出所有科目都达到75分以上的行,并计算这样的行数,分别给出各科的结果。
阅读全文