熟悉数据挖掘数据预处理流程(可利用pandas库中数据处理)。 基于给定的数据集(csv)文件,完成下列数据处理。 1、判断第一列(Id)是否有缺失值:如果有,则补全。 2、判断是否有重复记录:如果有,则删除至唯一。 3、计算成绩平均值 ,作为新一列加入原数据库框中。 4、寻找平均分最高的纪录。 5、统计每个科目大于等于60分的人数。
时间: 2024-03-18 17:40:54 浏览: 63
好的,下面是针对你的问题的Python代码实现:
```python
import pandas as pd
# 读取CSV文件
df = pd.read_csv("data.csv")
# 判断第一列(Id)是否有缺失值
if df['Id'].isnull().sum() > 0:
df['Id'].fillna(method='ffill', inplace=True)
# 判断是否有重复记录
df.drop_duplicates(inplace=True)
# 计算成绩平均值,作为新一列加入原数据库框中
df['Average'] = df[['Score1', 'Score2', 'Score3']].mean(axis=1)
# 寻找平均分最高的纪录
max_average = df['Average'].max()
record = df[df['Average'] == max_average]
# 统计每个科目大于等于60分的人数
pass_math = len(df[df['Score1'] >= 60])
pass_physics = len(df[df['Score2'] >= 60])
pass_english = len(df[df['Score3'] >= 60])
print("处理后的数据:")
print(df)
print("平均分最高的纪录:")
print(record)
print("数学成绩大于等于60分的人数:", pass_math)
print("物理成绩大于等于60分的人数:", pass_physics)
print("英语成绩大于等于60分的人数:", pass_english)
```
需要注意的是,这里的数据集文件名为“data.csv”,应根据实际文件名进行修改。
阅读全文