实操题-代码题

更新时间: 试题数量: 购买人数: 提供作者:

有效期: 个月

章节介绍: 共有个章节

收藏
搜索
题库预览
1.1.1 智能医疗系统中的业务数据处理流程设计

某医疗机构计划引入智能医疗系统,以提升诊断效率和准确性。通过分析患者的历史数据,使用机器学习算法预测患者的健康风险,从而辅助医生进行诊断和治疗。为此,该机构需要设计一套全面的业务数据处理流程,确保数据处理的高效性和准确性,为人工智能模型提供可靠的输入数据。

我们提供一个患者数据集(patient_data.csv),包含以下字段:

PatientID: 患者IDAge: 年龄BMI: 体重指数BloodPressure: 血压Cholesterol: 胆固醇水平DaysInHospital: 住院天数

你作为人工智能训练师,根据提供的数据集和Python代码框架(1.1.1.ipynb),完成以下数据的统计和分析,为智能医疗系统提供可靠的数据支持。

(1)通过运行Python代码(1.1.1.ipynb)分别统计住院天数超过7天的患者数量以及其占比。这类患者被定义为高风险患者,反之为低风险患者。将上述统计结果截图以JPG的格式保存,命名为“1.1.1-1”。

(2)通过运行Python代码(1.1.1. ipynb)统计不同BMI区间中高风险患者的比例和患者数。BMI区间分类设置为:低于18.5,18.5~24.9,25.0~29.9,高于30.0,将上述统计结果截图以JPG的格式保存,命名为“1.1.1-2”。

(3)通过运行Python代码(1.1.1. ipynb)统计不同年龄区间中高风险患者的比例和患者数。年龄区间分类设置为:低于25岁,26岁-35岁,36岁-45岁,46岁-55岁,56岁-65岁,高于65岁,将上述统计结果截图以JPG的格式保存,命名为“1.1.1-3”。

所有结果文件储存在桌面新建的考生文件夹中,文件夹命名为“准考证号+身份证号后六位”。


代码填空(注意解析)


import pandas as pd

import numpy as np

import matplotlib.pyplot as plt


# 读取数据集

data = pd._____________('patient_data.csv')


# 1. 统计住院天数超过7天的患者数量及其占比

# 创建新列'RiskLevel',根据住院天数判断风险等级

data['RiskLevel'] = np._____________(data['DaysInHospital']>7, '高风险患者', '低风险患者')

# 统计不同风险等级的患者数量

risk_counts = data['RiskLevel']._____________()

# 计算高风险患者占比

high_risk_ratio = risk_counts['高风险患者'] / _____________(data)

# 计算低风险患者占比

low_risk_ratio = risk_counts['低风险患者'] / _____________(data)


# 输出结果

print("高风险患者数量:", _____________['高风险患者'])

print("低风险患者数量:", _____________['低风险患者'])

print("高风险患者占比:", _____________)

print("低风险患者占比:", _____________)


# 2. 统计不同BMI区间中高风险患者的比例和患者数

# 定义BMI区间和标签

bmi_bins = [0, 18.5, 24.9, 29.9, np.inf]

bmi_labels = ['低于18.5', '18.5~24.9', '25.0~29.9', '高于30.0']

# 根据BMI值分配BMI区间标签

data['BMIRange'] = pd._____________(data['BMI'], bins=bmi_bins, labels=bmi_labels)

# 计算每个BMI区间中高风险患者的比例

bmi_risk_rate = data._____________('BMIRange')['RiskLevel'].apply(lambda x: (x == '高风险患者').mean())

# 统计每个BMI区间的患者数量

bmi_patient_count = data['BMIRange']._____________()


# 输出结果

print("BMI区间中高风险患者的比例和患者数:")

print(_____________)    #高风险患者的比例

print(_____________)    #高风险患者的患者数


# 3. 统计不同年龄区间中高风险患者的比例和患者数

# 定义年龄区间和标签

age_bins = [0, 25, 35, 45, 55, 65, np.inf]

age_labels = ['低于25岁', '26岁-35岁', '36岁-45岁', '46岁-55岁', '56岁-65岁', '高于65岁']

# 根据年龄值分配年龄区间标签

data['AgeRange'] = pd._____________(data['Age'], bins=age_bins, labels=age_labels)

# 计算每个年龄区间中高风险患者的比例

age_risk_rate = data._____________('AgeRange')['RiskLevel'].apply(lambda x: (x == '高风险患者').mean())

# 统计每个年龄区间的患者数量

age_patient_count = data['AgeRange']._____________()


# 输出结果

print("年龄区间中高风险患者的比例和患者数:")

print(_____________)   #高风险患者的比例

print(_____________)   #高风险患者的患者数

1.1.2 智能农业系统中的业务数据采集和处理流程设计

某农业公司计划引入智能农业系统,通过安装在农田中的各种传感器(如温度传感器、湿度传感器、土壤传感器等)实时监控农田环境,收集数据并进行分析,以优化作物管理和提高产量。为此,公司需要设计并实现一套数据采集和处理流程,确保数据的高效采集、传输和处理,为智能分析提供可靠的数据支持。

我们提供一个传感器数据集(sensor_data.csv),包含以下字段:

SensorID: 传感器IDTimestamp: 时间戳SensorType: 传感器类型(Temperature温度, Humidity湿度, SoilMoisture土壤水分, SoilPH土壤酸碱度, Light光传感器)Value: 传感器读数Location: 传感器安装位置:

你作为智能农业系统的人工智能训练师,根据提供的sensor_data.csv数据集和Python代码框架(1.1.2.ipynb),完成以下数据的采集和处理任务,为智能农业系统提供可靠的数据支持。请按照以下要求完成任务,确保结果准确并保存相应的截图。

(1)传感器数据统计:

通过运行Python代码(1.1.2.ipynb)分别统计每种传感器的数据数量和平均值。将上述统计结果截图以JPG的格式保存,命名为“1.1.2-1”。

(2)按位置统计温度和湿度数据:

通过运行Python代码(1.1.2.ipynb)统计每个位置的温度和湿度传感器数据的平均值。将上述统计结果截图以JPG的格式保存,命名为“1.1.2-2”。

(3)数据清洗和异常值处理:

通过运行Python代码(1.1.2.ipynb)对数据进行清洗,处理异常值。具体要求如下:

将明显异常的温度(< -10 或 > 50)和湿度(< 0 或 > 100)数据进行标记并统计。对缺失值使用前面数据的值(如果前面值没有采用后面数据的值)进行填补。将清洗后的数据保存为新文件cleaned_sensor_data.csv。

所有结果文件储存在桌面新建的考生文件夹中,文件夹命名为“准考证号+身份证号后六位”。


代码填空


import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

# 读取数据集

data = pd._____________('sensor_data.csv')


# 1. 传感器数据统计

# 对传感器类型进行分组,并计算每个组的数据数量和平均值

sensor_stats = data._____________('SensorType')['Value'].agg(['count', 'mean'])

# 输出结果

print("传感器数据数量和平均值:")

print(_____________)


# 2. 按位置统计温度和湿度数据

# 筛选出温度和湿度数据,然后按位置和传感器类型分组,计算每个组的平均值

location_stats = data[data['SensorType'].isin(['Temperature', 'Humidity'])]._____________(['Location', 'SensorType'])['Value'].mean().unstack()

# 输出结果

print("每个位置的温度和湿度数据平均值:")

print(_____________)


# 3. 数据清洗和异常值处理

# 标记异常值

data['is_abnormal'] = np._____________(

    ((data['SensorType'] == 'Temperature') & ((data['Value'] < -10) | (data['Value'] > 50))) |

    ((data['SensorType'] == 'Humidity') & ((data['Value'] < 0) | (data['Value'] > 100))),

    True, False

)

# 输出异常值数量

print("异常值数量:", data['is_abnormal']._____________())

# 填补缺失值

# 使用前向填充和后向填充的方法填补缺失值

data['Value']._____________(method='ffill', inplace=True)

data['Value']._____________(method='bfill', inplace=True)

# 保存清洗后的数据

# 删除用于标记异常值的列,并将清洗后的数据保存到新的CSV文件中

cleaned_data = data._____________(columns=['is_abnormal'])

cleaned_data._____________('cleaned_sensor_data.csv', index=False)

print("数据清洗完成,已保存为 'cleaned_sensor_data.csv'")

1.1.3 金融机构信用评估系统中的业务数据审核流程设计

某金融机构计划引入智能信用评估系统,通过分析客户的历史交易数据和信用记录,使用机器学习算法预测客户的信用风险等级,从而辅助贷款审批和风险控制。为了确保数据的准确性和可靠性,该机构需要设计并实现一套全面的业务数据审核流程,确保数据在进入信用评估系统之前经过严格的审核和清洗。

我们提供一个客户信用数据集(credit_data.csv),包含以下字段:

CustomerID: 客户IDName: 客户姓名Age: 年龄Income: 收入LoanAmount: 贷款金额LoanTerm: 贷款期限(月)CreditScore: 信用评分Default: 是否违约(0: 否,1: 是)TransactionHistory: 历史交易记录(JSON格式)

你作为人工智能训练师,根据提供的credit_data.csv数据集和Python代码框架(1.1.3.ipynb),完成以下数据的审核和处理任务,确保数据的准确性和可靠性。请按照以下要求完成任务,确保结果准确并保存相应的截图。

(1)数据完整性审核:

通过运行Python代码(1.1.3.ipynb)检查数据集中的每个字段是否存在缺失值和重复值。将上述审核结果截图以JPG的格式保存,命名为“1.1.3-1”。

(2)数据合理性审核:

通过运行Python代码(1.1.3.ipynb)审核以下字段的合理性:

年龄:应在18到70岁之间。收入:应大于2000。贷款金额:应小于收入的5倍。信用评分:应在300到850之间。

对不合理的数据进行标记,并将审核结果截图以JPG的格式保存,命名为“1.1.3-2”。

(3)通过运行Python代码(1.1.3.ipynb)对数据进行清洗,处理异常值。具体要求如下:

将不合理的数据进行标记,并对异常值所在行进行删除;清洗后的数据保存为新文件cleaned_credit_data.csv。

所有结果文件储存在桌面新建的考生文件夹中,文件夹命名为“准考证号+身份证号后六位”。


代码填空


import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

# 读取数据集

data = pd.read_csv('credit_data.csv')


# 1. 数据完整性审核

missing_values = data._________().__________()       #数据缺失值统计 2分

duplicate_values = data._________().__________()     #数据重复值统计 2分

# 输出结果

print("缺失值统计:")

print(missing_values)

print("重复值统计:")

print(duplicate_values)


# 2. 数据合理性审核

_________['is_age_valid'] = _________['Age'].between(18, 70)            #Age数据的合理性审核 2分

_________['is_income_valid'] = _________['Income'] > 2000         #Income数据的合理性审核 2分

_________['is_loan_amount_valid'] = _________['LoanAmount'] < (data['Income'] * 5)    #LoanAmount数据的合理性审核 2分

_________['is_credit_score_valid'] = _________['CreditScore'].between(300, 850)   #CreditScore数据的合理性审核 2分

# 合理性检查结果

validity_checks = data[['is_age_valid', 'is_income_valid', 'is_loan_amount_valid', 'is_credit_score_valid']].all(axis=1)

data['is_valid'] = validity_checks

# 输出结果

print("数据合理性检查:")

print(data[['is_age_valid', 'is_income_valid', 'is_loan_amount_valid', 'is_credit_score_valid', 'is_valid']].describe())


# 3. 数据清洗和异常值处理

# 标记不合理数据

invalid_rows = data[~data['is_valid']]

# 删除不合理数据行

cleaned_data = data[data['is_valid']]

# 删除标记列

cleaned_data = cleaned_data.drop(columns=['is_age_valid', 'is_income_valid', 'is_loan_amount_valid', 'is_credit_score_valid', 'is_valid'])

# 保存清洗后的数据

cleaned_data.to_csv('cleaned_credit_data.csv', index=False)

print("数据清洗完成,已保存为 'cleaned_credit_data.csv'")

1.1.4 电商平台用户行为分析系统的数据采集与处理流程设计

某电商平台希望通过用户行为数据分析,了解用户购物习惯、购买倾向等,从而优化产品推荐系统,提高用户满意度和销售额。作为数据分析师,您需要设计一套全面的业务数据采集与处理流程,确保数据在进入用户行为分析系统之前经过严格的采集、清洗和预处理。

我们提供一个用户行为数据集(user_behavior_data.csv),包含以下字段:

UserID: 用户IDUserName: 用户名Age: 年龄Gender: 性别(Male/Female)Location: 位置LastLogin: 上次登录时间PurchaseAmount: 购买金额PurchaseCategory: 购买类别(例如,电子产品、服装、食品等)ReviewScore: 用户评价评分(1-5)LoginFrequency: 登录频率(每日、每周、每月)

你作为人工智能训练师,根据提供的user_behavior_data.csv数据集和Python代码框架(1.1.4.ipynb),完成以下数据的采集与处理任务,确保数据的准确性和可靠性。请按照以下要求完成任务,确保结果准确并保存相应的截图。

(1)数据采集:

通过运行Python代码(1.1.4.ipynb),从本地文件user_behavior_data.csv中读取数据,并将数据加载到DataFrame中。打印前5条数据。

(2)数据清洗与预处理:

通过运行Python代码(1.1.4.ipynb)对数据进行清洗和预处理,具体要求如下:

处理缺失值:对缺失值进行填充或删除。数据类型转换:确保每个字段的数据类型正确。处理异常值:删除不合理的年龄、购买金额和评价评分。数据标准化:对购买金额和评价评分进行标准化处理。

清洗后的数据保存为新文件cleaned_user_behavior_data.csv。

(3)数据统计:

通过运行Python代码(1.1.4.ipynb),完成以下数据统计任务:

统计每个购买类别的用户数。统计不同性别的平均购买金额。统计不同年龄段的用户数(18-25岁、26-35岁、36-45岁、46-55岁、56-65岁、65岁以上)。

将统计结果分别截图以JPG的格式保存,分别命名为“1.1.4-1”、“1.1.4-2”、“1.1.4-3”。

所有结果文件储存在桌面新建的考生文件夹中,文件夹命名为“准考证号+身份证号后六位”。


代码填空


import pandas as pd

import numpy as np

import matplotlib.pyplot as plt


# 1. 数据采集

# 从本地文件中读取数据  2分

data =  _________.__________('user_behavior_data.csv')

print("数据采集完成,已加载到DataFrame中")


# 打印数据的前5条记录  2分

print(__________._________())


# 2. 数据清洗与预处理

# 处理缺失值  2分

data = ________________.________________()


# 数据类型转换

data['Age'] = ________________['Age'].________________(int)   # Age数据类型转换 2分

data['PurchaseAmount'] = ________________['PurchaseAmount'].________________(float) # PurchaseAmount数据类型转换  2分

data['ReviewScore'] = ________________['ReviewScore'].________________(int)  # ReviewScore数据类型转换 2分


# 处理异常值  2分

data = data[(data['Age'].________________(18, 70)) & 

            (data['PurchaseAmount'] > 0) & 

            (data['ReviewScore'].________________(1, 5))]


# 数据标准化

data['PurchaseAmount'] = (data['PurchaseAmount'] - data['PurchaseAmount'].________________()) / data['PurchaseAmount'].________________()  # PurchaseAmount数据标准化 2分

data['ReviewScore'] = (data['ReviewScore'] - data['ReviewScore'].________________()) / data['ReviewScore'].________________()   # ReviewScore数据标准化 2分


# 保存清洗后的数据  1分

data.________________('cleaned_user_behavior_data.csv', index=False)

print("数据清洗完成,已保存为 'cleaned_user_behavior_data.csv'")


# 3. 数据统计

# 统计每个购买类别的用户数

purchase_category_counts = data['PurchaseCategory'].value_counts()

print("每个购买类别的用户数:\n", purchase_category_counts)


# 统计不同性别的平均购买金额

gender_purchase_amount_mean = data.groupby('Gender')['PurchaseAmount'].mean()

print("不同性别的平均购买金额:\n", gender_purchase_amount_mean)


# 统计不同年龄段的用户数

bins = [18, 25, 35, 45, 55, 65, 70]

labels = ['18-25', '26-35', '36-45', '46-55', '56-65', '65+']

data['AgeGroup'] = pd.cut(data['Age'], bins=bins, labels=labels, right=False)

age_group_counts = data['AgeGroup'].value_counts().sort_index()

print("不同年龄段的用户数:\n", age_group_counts)


1.1.5 智能交通系统的数据采集、处理和审核流程设计

某智能交通系统希望通过车辆的行驶数据,利用人工智能技术进行交通流量预测和拥堵预警。你作为人工智能训练师,需要设计一套全面的业务数据采集、处理和审核流程,确保数据在进入交通流量分析系统之前经过严格的采集、清洗、审核和预处理。这里提供一个车辆行驶数据集(vehicle_traffic_data.csv),包含以下字段:

VehicleID: 车辆IDDriverName: 驾驶员姓名Age: 年龄Gender: 性别(Male/Female)Speed: 车速(km/h)TravelDistance: 行驶距离(km)TravelTime: 行驶时间(min)TrafficEvent: 交通事件(Normal, Accident, Traffic Jam, Breakdown)

你作为人工智能训练师,根据提供的vehicle_traffic_data.csv数据集和Python代码框架(1.1.5.ipynb),完成以下数据的采集、处理和审核任务,确保数据的准确性和可靠性。请按照以下要求完成任务,确保结果准确并保存相应的截图。

(1)数据采集:

通过运行Python代码(1.1.5.ipynb),从本地文件vehicle_traffic_data.csv中读取数据,并将数据加载到DataFrame中。显示前5行数据截图以JPG的格式保存,命名为“1.1.5-1”。

(2)数据清洗与预处理: 

通过运行Python代码(1.1.5.ipynb)对数据进行清洗和预处理,具体要求如下:

处理缺失值:对缺失值进行删除。数据类型转换:确保每个字段的数据类型正确。处理异常值:删除不合理的年龄、车速、行驶距离和行驶时间。

清洗后的数据保存为新文件cleaned_vehicle_traffic_data.csv。

(3)数据合理性审核: 通过运行Python代码审核以下字段的合理性:

年龄:应在18到70岁之间。车速:应在0到200 km/h之间。行驶距离:应在1到1000 km之间。行驶时间:应在1到1440分钟(24小时)之间。

对不合理的数据进行标记,并将审核结果截图以JPG的格式保存,命名为“1.1.5-2”。

(4)数据统计:

通过运行Python代码(1.1.5.ipynb),完成以下数据统计任务:

统计每种交通事件的发生次数。统计不同性别的平均车速、行驶距离和行驶时间。统计不同年龄段的驾驶员数(18-25岁、26-35岁、36-45岁、46-55岁、56-65岁、65岁以上)。

将统计结果分别截图以JPG的格式保存,分别命名为“1.1.5-3”、“1.1.5-4”、“1.1.5-5”。

所有结果文件储存在桌面新建的考生文件夹中,文件夹命名为“准考证号+身份证号后六位”。


代码填空


import pandas as pd

import numpy as np

import matplotlib.pyplot as plt


# 1. 数据采集

# 从本地文件中读取数据  2分

data = _____________._____________('vehicle_traffic_data.csv')

print("数据采集完成,已加载到DataFrame中")


# 打印数据的前5条记录

print(data.head())


# 2. 数据清洗与预处理

# 处理缺失值  2分

data = _____________._____________()


# 数据类型转换

data['Age'] = data['Age']._____________(int)               #Age数据类型转换 1分

data['Speed'] = data['Speed']._____________(float)           #Speed数据类型转换 1分

data['TravelDistance'] = data['TravelDistance']._____________(float)  #TravelDistance数据类型转换 1分

data['TravelTime'] = data['TravelTime']._____________(float)     #TravelTime数据类型转换 1分


# 处理异常值  2分

data = data[(data['Age']._____________(18, 70))  & 

            (data['Speed'].between(0, 200)) & 

            (data['TravelDistance'].between(1, 1000)) & 

            (data['TravelTime']._____________(1, 1440))]


# 保存清洗后的数据  1分

data._____________('cleaned_vehicle_traffic_data.csv', index=False)

print("数据清洗完成,已保存为 'cleaned_vehicle_traffic_data.csv'")


# 3. 数据合理性审核

# 审核字段合理性 1分

unreasonable_data = _____________[~((data['Age'].between(18, 70)) & 

                           (data['Speed'].between(0, 200)) & 

                           (data['TravelDistance'].between(1, 1000)) & 

                           (data['TravelTime'].between(1, 1440)))]

print("不合理的数据:\n", unreasonable_data)


# 4. 数据统计

# 统计每种交通事件的发生次数  2分

traffic_event_counts = _____________['TrafficEvent']._____________()

print("每种交通事件的发生次数:\n", traffic_event_counts)


# 统计不同性别的平均车速、行驶距离和行驶时间  2分

gender_stats = data._____________('Gender')._____________({'Speed': 'mean', 'TravelDistance': 'mean', 'TravelTime': 'mean'})

print("不同性别的平均车速、行驶距离和行驶时间:\n", gender_stats)


# 统计不同年龄段的驾驶员数  2分

age_bins = [18, 25, 35, 45, 55, 65, 70]

age_labels = ['18-25', '26-35', '36-45', '46-55', '56-65', '66-70']

data['AgeGroup'] = pd._____________(data['Age'], bins=age_bins, labels=age_labels, right=False)

age_group_counts = data['AgeGroup']._____________()

print("不同年龄段的驾驶员数:\n", age_group_counts)

2.1.1 智慧交通中燃油效率模型的数据清洗和标注流程设计

在现代交通中,燃油效率(MPG)是衡量汽车性能和交通系统优化的重要指标之一。高效的燃油利用不仅能够降低车辆运营成本,还能减少碳排放,促进环保。开发一个用于预测汽车燃油效率的模型可以帮助智慧交通系统优化路线规划和车辆调度,从而提升整体交通效率和减少能源消耗。此外,这样的模型还可以帮助消费者做出更明智的购车决策,并帮助厂商优化汽车设计。
现要求根据提供的汽车燃油效率数据集,补全2.1.1.ipynb代码。选择合适的特征,开发一个燃油效率预测模型。在开发预测模型之前,首先要对数据进行数据清洗和标注,请完成下面的数据预处理任务,并设计一套标注流程规范:
(1)正确加载数据集,并显示前五行的数据及数据类型。
(2)检查数据集中的缺失值并删除缺失值所在的行。
(3)将“horsepower”列转换为数值类型,并处理转换中的异常值。
(4)对数值型数据进行标准化处理,确保数据在同一量纲下进行分析。
(5)根据业务需求和数据特性,选择对燃油效率预测最有用的特征:选择以下特征:'cylinders'、'displacement'、'horsepower'、'weight'、'acceleration'、'model year'、'origin'
(6)将“mpg”设为目标变量并标注;
(7)对数据进行标注和划分;
(8)保存处理后的数据,并命名为:2.1.1_cleaned_data.csv,保存到考生文件夹;
(9)制定数据清洗和标注规范,将答案写到答题卷文件中,答题卷文件命名为“2.1.1.doc”,保存到考生文件夹;
 (10)将以上代码以及运行结果,以html格式保存并命名为2.1.1.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”。


代码填空


import pandas as pd


# 加载数据集并显示数据集的前五行 1分

file_path = 'auto-mpg.csv'

data = pd.__________(file_path)

print("数据集的前五行:")

print(data.head())


# 显示每一列的数据类型

print(data.dtypes)


# 检查缺失值并删除缺失值所在的行  2分

print("\n检查缺失值:")

print(data.__________().sum())  

data = data.__________()


# 将 'horsepower' 列转换为数值类型,并处理转换中的异常值 1分

data['horsepower'] = pd.to_numeric(data['horsepower'], errors='coerce')

data = data.__________(subset=['horsepower'])


# 显示每一列的数据类型

print(data.horsepower.dtypes)


# 检查清洗后的缺失值

print("\n检查清洗后的缺失值:")

print(data.isnull().sum())


from sklearn.preprocessing import StandardScaler

# 对数值型数据进行标准化处理 1分

numerical_features = ['displacement', 'horsepower', 'weight', 'acceleration']

scaler = StandardScaler()

data[numerical_features] = scaler.__________(data[numerical_features])


from sklearn.model_selection import train_test_split

# 选择特征和目标变量 2分

selected_features = ['__________', 'displacement', 'horsepower', 'weight', 'acceleration', 'model year', 'origin']

X = data[__________]

y = data['__________']


# 划分数据集为训练集和测试集 1分

X_train, X_test, y_train, y_test = __________(X, y, test_size=0.2, random_state=42)



# 将特征和目标变量合并到一个数据框中

cleaned_data = X.copy()

cleaned_data['mpg'] = y


# 保存清洗和处理后的数据

cleaned_data.__________('2.1.1_cleaned_data.csv', index=False)


# 打印消息指示文件已保存

print("\n清洗后的数据已保存到 2.1.1_cleaned_data.csv")



2.1.2 低碳生活行为影响因素数据清洗和标注流程设计

题干:在应对气候变化的背景下,了解和促进低碳生活行为变得越来越重要。现要求根据提供的“大学生低碳生活行为的影响因素数据集”,选择合适的特征,开发一个预测大学生低碳生活行为的模型。提供的数据集样本数据包含300多个关于大学生低碳生活行为的自变量和因变量。自变量为主观规范、知觉行为控制、低碳行为态度,中介变量为行为意愿,因变量为低碳生活行为。同时,性别、生源地、月生活费作为控制变量进行研究。在开发预测模型之前,首先要对数据进行数据清洗和标注。补全2.1.2.ipynb代码。完成下面的数据预处理任务,并设计一套标注流程规范:
(1)正确加载数据集,并显示前五行的数据;
(2)检查数据集中的缺失值,使用删除包含缺失值的行的办法处理,记录缺失值处理后的数据行数;
(3)检查数据集中的重复值并删除所有重复值,并记录删除的行数;
(4)对数值型数据进行标准化处理,确保数据在同一量纲下进行分析;
(5)根据业务需求和数据特性,选择对低碳生活行为预测最有用的特征,将“低碳行为积极性”设为目标变量并标注。选择以下特征:
1.您的性别○男性 ○女性
2.您的年级○大一 ○大二 ○大三 ○大四
3.您的生源地○农村 ○城镇(乡镇) ○地县级城市 ○省会城市及直辖市
4.您的月生活费○≦1,000元 ○1,001-2,000元 ○2,001-3,000元 ○≧3,001元
5.您进行过绿色低碳的相关生活方式吗?
6.您觉得“低碳”,与你的生活关系密切吗?
7.低碳生活是否会成为未来的主流生活方式?
8.您是否认为低碳生活会提高您的生活质量?
(6)对数据进行划分(8:2);
(7)保存处理后的数据,并命名为:2.1.2_cleaned_data.csv,保存到考生文件夹;
(8)制定数据清洗和标注规范,将答案写到答题卷文件中,答题卷文件命名为“2.1.2.docx”,保存到考生文件夹;
 (9)将以上代码以及运行结果,以html格式保存并命名为2.1.2.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”


代码填空


import pandas as pd

#读取一个Excel文件,并将读取到的数据存储在变量data中

data = pd.__________('大学生低碳生活行为的影响因素数据集.xlsx')

#打印出数据集的前5行

print(data.head())


#处理数据集中的缺失值

initial_row_count = data.__________[0]

data = data.__________()

final_row_count = data.shape[0]

print(f'处理后数据行数: {final_row_count}, 删除的行数: {initial_row_count - final_row_count}')


#处理重复行

duplicate_count = data.duplicated().sum()

data = data.__________()

print(f'删除的重复行数: {duplicate_count}')


from sklearn.preprocessing import StandardScaler

numerical_features = ['4.您的月生活费○≦1,000元   ○1,001-2,000元   ○2,001-3,000元   ○≧3,001元']

scaler = StandardScaler()

data[numerical_features] = scaler.__________(data[numerical_features])


selected_features = [

    '1.您的性别○男性   ○女性', '2.您的年级○大一   ○大二   ○大三   ○大四', '3.您的生源地○农村   ○城镇(乡镇)   ○地县级城市  ○省会城市及直辖市', '4.您的月生活费○≦1,000元   ○1,001-2,000元   ○2,001-3,000元   ○≧3,001元',

    '5.您进行过绿色低碳的相关生活方式吗?', '6.您觉得“低碳”,与你的生活关系密切吗?',

    '7.低碳生活是否会成为未来的主流生活方式?', '8.您是否认为低碳生活会提高您的生活质量?'

]

X = data[__________]


# 创建目标变量

y = __________['__________']


from sklearn.model_selection import train_test_split

# 数据划分

X_train, X_test, y_train, y_test = __________(X, y, test_size=0.2, random_state=42)


# 保存处理后的数据

cleaned_data = pd.concat([X, y], axis=1)

cleaned_data.__________('2.1.2_cleaned_data.csv', index=False)

2.1.3 信用评分模型数据清洗和标注流程设计

互联网金融飞速发展,使得个人金融理财变得越来越容易。而其中信用评分技术是一种对贷款申请人(信用卡申请人)做风险评估分值的统计模型,可以根据客户提供的资料、客户的历史数据、第三方平台数据(芝麻分、京东、微信等),对客户的信用进行评估。现要求根据提供的Finance数据集,选择合适的特征,开发一个申请的评分模型,对未来一段时间内借贷人出现违约的概率进行预测,对客户信用进行评估打分。提供的数据集样本数据一共15000条,10个自变量,1个因变量(SeriousDlqin2yrs)。在开发评分模型之前,首先要对数据进行数据清洗,请补全2.1.3.ipynb代码完成下面的数据预处理任务,并设计一套标注流程规范:
(1)正确加载数据集,并显示前五行的数据;
(2)检查数据集中的异常值并处理异常值,使用箱线图检测异常值,使用IQR方法处理异常值;
设置图像的尺寸为12英寸宽和8英寸高;
将画布分成3行4列,总共可以容纳12个子图;
(3)检查数据集中的重复值并删除所有重复值,并记录删除的行数;
(4)对数据进行归一化处理;
(5)创建新的特征IncomeToDebtRatio,MonthlyIncome,并添加到数据集中;
(6)将SeriousDlqin2yrs设为目标变量并标注;
(7)对数据进行划分;
(8)保存处理后的数据,并命名为:2.1.3_cleaned_data.csv,保存到考生文件夹;
(9)制定数据清洗和特征工程规范,将答案写到答题卷文件中,答题卷文件命名为“2.1.3.docx”,保存到考生文件夹;
 (10)将以上代码以及运行结果,以html格式保存并命名为2.1.3.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”。


代码填空


import pandas as pd


# Load the data

file_path = 'finance数据集.csv'

data = pd.__________(file_path)


# 显示前五行的数据

data.head()


import matplotlib.pyplot as plt

import seaborn as sns


# 设置图像尺寸

plt.figure(figsize=(12, 8))


# 识别数值列用于箱线图

numeric_cols = data.select_dtypes(include=['float64', 'int64']).__________


# 创建箱线图

for i, col in enumerate(numeric_cols, 1):

    plt.subplot(3, 4, i)

    sns.boxplot(x=data[col])

    plt.title(col)


plt.tight_layout()

plt.show()


# 使用IQR处理异常值

Q1 = data[numeric_cols].__________(0.25)

Q3 = data[numeric_cols].quantile(0.75)

IQR = Q3 - Q1


# 移除异常值

data_cleaned = data[~((data[numeric_cols] < (Q1 - 1.5 * IQR)) | (data[numeric_cols] > (Q3 + 1.5 * IQR))).any(axis=1)]


# 检查重复值

duplicates = data_cleaned.__________()

num_duplicates = duplicates.sum()

data_cleaned = data_cleaned[~duplicates]


print(f'删除的重复行数: {num_duplicates}')


from sklearn.preprocessing import MinMaxScaler


scaler = MinMaxScaler()

data_cleaned[numeric_cols] = scaler.__________(data_cleaned[numeric_cols])


# 将SeriousDlqin2yrs设为目标变量

target_variable = '__________'


from sklearn.model_selection import train_test_split


# 定义特征和目标

X = data_cleaned.drop(columns=[__________])

y = data_cleaned[__________]


# 划分数据

X_train, X_test, y_train, y_test = __________(X, y, test_size=0.2, random_state=42)


# 显示划分后的数据形状

print(f'训练数据形状: {X_train.shape}')

print(f'测试数据形状: {X_test.shape}')


# 保存清洗后的数据到CSV

cleaned_file_path = '2.1.3_cleaned_data.csv'

data_cleaned.__________(cleaned_file_path, index=False)

2.1.4 医疗研究数据清洗和标注设计

随着医学技术的进步和医疗资源的丰富,医疗研究在改善患者治疗效果、提升医疗服务质量方面起到了重要作用。研究人员通过分析大量患者的治疗数据,能够评估不同治疗方案的效果,发现潜在的健康问题,并提出针对性的治疗建议。这不仅可以帮助患者获得更好的治疗效果,还能为医疗机构优化资源配置、提升服务水平提供重要依据。
现提供一份医疗研究数据集,训练集样本数据一共5441条记录。请补全2.1.4.ipynb代码,完成下面的数据预处理任务:
1、加载数据集,查看表的数据类型,表结构和显示每一列的空缺值数量;
2、将“就诊日期”和“诊断日期”规范为“yyyy-mm-dd”格式,并将“病人ID”列名改为“患者ID”,显示修改后的表结构;
3、增加“诊断延迟”(诊断日期-就诊日期)和“病程”(当前日期-诊断日期)两列,删除不合理的数据(如负数,年龄为几百岁等);
4、检查数据集中的重复值并删除所有重复值,并记录删除的行数;
5、对数据段[年龄,体重,身高]进行归一化处理;
6、统计不同疾病类型的治疗结果分布,并画出柱状图;
7、分析年龄和疾病严重程度的关系,绘制出散点图;
8、保存处理后的数据,并命名为:2.1.4_cleaned_data.csv,保存到考生文件夹;
9、制定数据清洗和数据标注规范,将答案写到答题卷文件中,答题卷文件命名为“2.1.4.docx”,保存到考生文件夹;
 10、将以上代码以及运行结果,以html格式保存并命名为2.1.4.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”。


代码填空


import pandas as pd


# 加载数据集并指定编码

file_path = 'medical_data.csv'

data = pd._____________(file_path, encoding='gbk')


# 查看数据类型

print(data.dtypes)

# 查看表结构

print(data._____________())


# 显示每一列的空缺值数量

print(data.isnull().sum())


# 规范日期格式

data['就诊日期'] = pd.to_datetime(data['就诊日期'])

data['诊断日期'] = pd.to_datetime(data['诊断日期'])


# 重命名列

data._____________(columns={'病人ID': '患者ID'}, inplace=True)


# 查看修改后的表结构

print(data.head())


from datetime import datetime


# 增加诊断延迟和病程

data['诊断延迟'] = (data['诊断日期'] - data['就诊日期']).dt._____________

data['病程'] = (datetime(2024, 9, 1) - data['诊断日期']).dt.days


# 删除不合理的数据

data = _____________[(data['诊断延迟'] >= 0) & (data['年龄'] > 0) & (data['年龄'] < 120)]


# 查看修改后的数据

print(data.describe())


# 删除重复值并记录删除的行数

initial_rows = data.shape[0]

data._____________(inplace=True)

deleted_rows = initial_rows - data.shape[0]


print(f'删除的重复行数: {deleted_rows}')


from sklearn.preprocessing import MinMaxScaler


# 对需要归一化的列进行处理

scaler = MinMaxScaler()

columns_to_normalize = ['年龄', '体重', '身高']

data[columns_to_normalize] = scaler._____________(data[columns_to_normalize])


# 查看归一化后的数据

print(data.head())


import matplotlib.pyplot as plt

import matplotlib.font_manager as fm



# 统计治疗结果分布

treatment_outcome_distribution = data.groupby('疾病类型')['治疗结果'].value_counts().unstack()


# 设置中文字体

font_path = 'C:/Windows/Fonts/simhei.ttf'  # 根据你的系统调整字体路径

my_font = fm.FontProperties(fname=font_path)


# 绘制柱状图

treatment_outcome_distribution._____________(kind='bar', stacked=True)

plt.title('不同疾病类型的治疗结果分布', fontproperties=my_font)

plt.xlabel('疾病类型', fontproperties=my_font)

plt.ylabel('治疗结果数量', fontproperties=my_font)

plt.xticks(fontproperties=my_font)  # 设置x轴刻度标签的字体

plt.yticks(fontproperties=my_font)  # 设置y轴刻度标签的字体

plt.legend(prop=my_font)  # 设置图例字体

plt.show()


# 绘制散点图

plt._____________(data['年龄'], data['疾病严重程度'])

plt.title('年龄和疾病严重程度的关系', fontproperties=my_font)

plt.xlabel('年龄', fontproperties=my_font)

plt.ylabel('疾病严重程度', fontproperties=my_font)

plt.xticks(fontproperties=my_font)  # 设置x轴刻度标签的字体

plt.yticks(fontproperties=my_font)  # 设置y轴刻度标签的字体

plt.legend(prop=my_font)  # 设置图例字体

plt.show()


# 保存数据

output_path = '2.1.4_cleaned_data.csv'

data._____________(output_path, index=False)

2.1.5 健康与营养咨询数据预处理与数据规范设计

在健康与营养咨询领域,客户的健康数据是评估其饮食和生活方式建议的重要依据。通过对客户健康数据的分析,可以帮助健康咨询师更准确地评估客户的健康状况,并制定个性化的营养和健康管理计划。现提供一份健康咨询客户数据集。请补全2.1.5.ipynb代码,完成下面的数据预处理任务:
(1)加载数据集:查看表的数据类型,表结构和显示每一列的空缺值数量;
(2)去掉列名中的空格;
(3)缺失值处理:对于含有缺失值的列,进行适当的填充或删除操作;
(4)数据类型转换:将“Your age”列的数据类型转换为整数类型,并处理其中的异常值;
(5)数据去重:检查数据集中的重复值并删除所有重复值,并记录删除的行数;
(6)数据归一化处理:对“如何形容你的当前健身水平?”(How do you describe your current level of fitness ?)列中的数据进行归一化处理;
(7)绘制健身频率分布的饼图;
(8)对数据进行标注划分;
(9)保存处理后的数据,并命名为:2.1.5_cleaned_data.csv,保存到考生文件夹;
(10)制定数据清洗和数据标注规范,将答案写到答题卷文件中,答题卷文件命名为“2.1.5.docx”,保存到考生文件夹;
 (11)将以上代码以及运行结果,以html格式保存并命名为2.1.5.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”。


代码填空


import pandas as pd


# 加载数据集

file_path = '健康咨询客户数据集.csv'

data = pd.__________(file_path)


# 查看表的数据类型和表结构

data_info = data.__________()

print(data_info)


# 显示每一列的空缺值数量

missing_values = data.__________().sum()

print(missing_values)


# 删除含有缺失值的行

data_cleaned = data.__________()


# 或者,可以对特定列进行填充(这里示例用均值填充)

# data['column_name'].fillna(data['column_name'].mean(), inplace=True)


print(data_cleaned.info())


# 转换 'Your age' 列的数据类型为整数类型,并处理异常值

data_cleaned.loc[:, 'Your age'] = pd.__________(data_cleaned['Your age'], errors='coerce')

data_cleaned = data_cleaned.dropna(subset=['Your age'])

data_cleaned = data_cleaned[data_cleaned['Your age'] >= 0]

data_cleaned.loc[:, 'Your age'] = data_cleaned['Your age'].astype(int)


print(data_cleaned['Your age'].dtype)


# 检查和删除重复值

duplicates_removed = data_cleaned.duplicated().sum()

data_cleaned = data_cleaned.__________()


print(f"Removed {duplicates_removed} duplicate rows")


from sklearn.preprocessing import LabelEncoder


# 归一化 'How do you describe your current level of fitness ?' 列

label_encoder = LabelEncoder()

data_cleaned['How do you describe your current level of fitness ?'] = label_encoder.__________(data_cleaned['How do you describe your current level of fitness ?'])


print(data_cleaned['How do you describe your current level of fitness ?'].unique())


from sklearn.preprocessing import LabelEncoder

import matplotlib.pyplot as plt


# 去掉列名中的空格

data.columns = data.columns.str.strip()

# 显示数据集的列名

print(data.columns)


# 删除包含缺失值的行

data_cleaned = data.dropna(subset=['How often do you exercise?'])


# 统计不同健身频率的分布情况

exercise_frequency_counts = data_cleaned['How often do you exercise?'].value_counts()


# 绘制饼图

plt.figure(figsize=(10, 6))

exercise_frequency_counts.plot.__________(autopct='%1.1f%%', startangle=90, colors=plt.cm.Paired.colors)

plt.title('Distribution of Exercise Frequency')

plt.ylabel('')

plt.show()


import pandas as pd

from sklearn.model_selection import train_test_split

import matplotlib.pyplot as plt


# 填充缺失值

data_filled = data.apply(lambda x: x.fillna(x.mode()[0]))


# 划分数据

train_data, test_data = __________(data_filled, test_size=0.2, random_state=42)


# 保存数据

cleaned_file_path = '2.1.5_cleaned_data.csv'

data_filled.__________(cleaned_file_path, index=False)


2.2.1 智能信用评分Logistic回归模型开发与测试

互联网金融飞速发展,使得个人金融理财变得越来越容易。而其中信用评分技术是一种对贷款申请人(信用卡申请人)做风险评估分值的统计模型,可以根据客户提供的资料、客户的历史数据、第三方平台数据(芝麻分、京东、微信等),对客户的信用进行评估。现要求根据提供的finance数据集,补全2.2.1.ipynb代码。选择合适的特征,开发一个申请的评分模型,利用测试工具对模型进行测试,并对测试结果进行分析,完成测试报告,并运用工具对错误原因进行纠正。
(1)正确加载数据集,显示前五行的数据。
(2)使用Logistic模型进行模型训练,要求设定自变量和因变量,并根据自变量特征进行模型训练,最终将训练好的模型以文件名2.2.1_model.pkl保存到考生文件夹,结果文件以2.2.1_results.txt保存到考生文件夹。
(3)使用测试工具对模型进行测试,并记录测试结果,命名2.2.1_report.txt,保存到考生文件夹
(4)对测试结果进行详细分析,并编写测试报告,包括模型性能评估、错误分析及改进建议,将答案写到答题卷文件中,答题卷文件命名为“2.2.1.docx”,保存到考生文件夹。
(5)运用工具分析算法中错误案例产生的原因并进行纠正,重新得到模型训练结果,以文件名2.2.1_results_xg.txt保存到考生文件夹。
(6)将以上代码以及运行结果,以html格式保存并命名为2.2.1.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”。
数据集说明:
Unnamed: 0 - 索引号。
SeriousDlqin2yrs - 个人在过去两年内是否出现过严重的拖欠(1 表示有严重拖欠,0 表示没有)。
RevolvingUtilizationOfUnsecuredLines - 这是指个人未偿还的信用额度与总信用额度的比例。
age - 客户的年龄。
NumberOfTime30-59DaysPastDueNotWorse - 在过去一段时间内,贷款逾期30至59天的次数。
DebtRatio - 债务比率。
MonthlyIncome - 客户的月收入。
NumberOfOpenCreditLinesAndLoans - 正在使用的信贷账户或贷款的数量。
NumberOfTimes90DaysLate - 贷款逾期超过90天的次数。
NumberRealEstateLoansOrLines - 持有的房地产相关贷款或信贷的数量。
NumberOfTime60-89DaysPastDueNotWorse - 贷款逾期60至89天的次数。
 NumberOfDependents - 家庭中依赖该个人的人数。


代码填空


import pandas as pd

from sklearn.model_selection import train_test_split

from sklearn.linear_model import LogisticRegression

import pickle

from sklearn.metrics import classification_report

from imblearn.over_sampling import SMOTE


# 加载数据

file_path = 'finance数据集.csv'

data = pd.__________(file_path)


# 显示前五行的数据

print(data.__________())


# 选择自变量和因变量

X = data.__________(['SeriousDlqin2yrs', 'Unnamed: 0'], axis=1)

y = data['__________']


# 分割训练集和测试集

X_train, X_test, y_train, y_test = __________(X, y, test_size=0.2, random_state=42)


# 训练Logistic回归模型

model = __________(max_iter=1000)

model.fit(__________, y_train)


# 保存模型

with open('2.2.1_model.pkl', 'wb') as file:

    pickle.__________(model, file)


# 预测并保存结果

y_pred = model.__________(X_test)

pd.DataFrame(y_pred, columns=['预测结果']).to_csv('2.2.1_results.txt', index=False)


# 生成测试报告

report = classification_report(y_test, y_pred, zero_division=1)

with open('2.2.1_report.txt', 'w') as file:

    file.write(report)


# 分析测试结果

accuracy = (y_test == __________).mean()

print(f"模型准确率: {__________:.2f}")


# 处理数据不平衡

smote = SMOTE(random_state=42)

X_resampled, y_resampled = smote.fit_resample(__________, __________)


# 重新训练模型

model.fit(__________, __________)

# 重新预测

y_pred_resampled = model.__________(X_test)


# 保存新结果

pd.DataFrame(y_pred_resampled, columns=['预测结果']).to_csv('2.2.1_results_xg.txt', index=False)


# 生成新的测试报告

report_resampled = classification_report(y_test, y_pred_resampled, zero_division=1)

with open('2.2.1_report_xg.txt', 'w') as file:

    file.write(__________)


# 分析新的测试结果

accuracy_resampled = (y_test == y_pred_resampled).mean()

print(f"重新采样后的模型准确率: {accuracy_resampled:.2f}")


2.2.2 智慧交通中燃油效率随机森林模型开发与测试

在现代交通中,燃油效率(MPG)是衡量汽车性能和交通系统优化的重要指标之一。高效的燃油利用不仅能够降低车辆运营成本,还能减少碳排放,促进环保。开发一个用于预测汽车燃油效率的模型可以帮助智慧交通系统优化路线规划和车辆调度,从而提升整体交通效率和减少能源消耗。此外,这样的模型还可以帮助消费者做出更明智的购车决策,并帮助厂商优化汽车设计。
现要求根据提供的汽车燃油效率数据集,补全2.2.2.ipynb代码。选择合适的特征,开发一个燃油效率预测模型。利用测试工具对模型进行测试,并对测试结果进行分析,完成测试报告,并运用工具对错误原因进行纠正。
(1)正确加载数据集,显示前五行的数据。
(2)使用线性回归模型进行模型训练,要求设定自变量和因变量,并根据自变量特征进行模型训练,最终将训练好的模型以“2.2.2_model.pkl”命名保存到考生文件夹,结果文件以“2.2.2_results.txt”命名保存到考生文件夹。
(3)使用测试工具对模型进行测试,并记录测试结果,以“2.2.2_report.txt”命名保存到考生文件夹。
(4)运用工具分析算法中错误案例产生的原因并进行纠正,重新进行模型训练,并以“2.2.2_results_rf.txt”命名保存到考生文件夹。
(5)对测试结果进行详细分析,并编写测试报告,包括模型性能评估、错误分析及改进建议,将答案以“2.2.2.docx”命名写到答题卷文件中,并保存到考生文件夹。
(6)将以上代码以及运行结果,以html格式保存并命名为2.2.2.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”。
数据集说明:
mpg : 燃油效率,每加仑油可以行驶的英里数。
cylinders: 发动机气缸的数量。
displacement: 这是指发动机所有气缸的总容积。
horsepower: 发动机的马力。
weight: 车辆的重量。
acceleration: 加速。
model year: 车辆的生产年份。
origin: 指的是车辆的制造地或品牌所属国家。
 car name: 每辆车的具体名称或型号。


代码填空



2.2.3 日常运动量随机森林预测模型开发与测试

随着人们健康意识的增强,越来越多的人开始关注日常运动和健康管理。使用提供的训练数据,补全2.2.3.ipynb代码。选择合适的特征,开发一个预测模型,基于个体性别,个体对运动的看法和个人健康评价来预测个体年龄。利用测试工具对模型进行测试,并对测试结果进行分析,完成测试报告,并运用工具对错误原因进行纠正。
详细说明如下:
(含图)

(1)正确加载数据集,并显示前五行的数据(2)使用随机森林模型进行模型训练,要求设定自变量和因变量,并根据自变量特征进行模型训练,最终将训练好的模型以文件名2.2.3_model.pkl保存到考生文件夹,结果文件以2.2.3_results.txt保存到考生文件夹。
(3)使用测试工具对模型进行测试,并记录测试结果,命名2.2.3_report.txt,保存到考生文件夹
(4)对测试结果进行详细分析,并编写测试报告,包括模型性能评估、错误分析及改进建议,将答案写到答题卷文件中,答题卷文件命名为“2.2.3.docx”,保存到考生文件夹。
(5)运用工具分析算法中错误案例产生的原因并进行纠正,重新得到模型训练结果,以文件名2.2.3_results_xgb.txt保存到考生文件夹。
 (6)将以上代码以及运行结果,以html格式保存并命名为2.2.3.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”。


代码填空


import pandas as pd

from sklearn.model_selection import train_test_split

from sklearn.ensemble import RandomForestRegressor

import pickle

from sklearn.metrics import mean_squared_error, r2_score

import xgboost as xgb


# 加载数据集

df = pd.__________('fitness analysis.csv')


# 显示前五行数据

print(df.__________())


# 去除所有字符串字段的前后空格

df = df.applymap(lambda x: x.strip() if isinstance(x, str) else x)


# 检查和清理列名

df.columns = df.columns.str.strip()


# 选择相关特征进行建模

X = df[['Your gender', 'How important is exercise to you ?', 'How healthy do you consider yourself?']]

X = pd.__________(X)  # 将分类变量转为数值变量


# 将年龄段转为数值变量

y = df['Your age'].__________(lambda x: int(x.split(' ')[0]))  # 假设年龄段为整数


# 将数据集划分为训练集和测试集

X_train, X_test, y_train, y_test = __________(X, y, test_size=0.2, random_state=42)


# 创建并训练随机森林回归模型

rf_model = __________(n_estimators=100, random_state=42)

rf_model.fit(__________, y_train)


# 保存训练好的模型

with open('2.2.3_model.pkl', 'wb') as model_file:

    pickle.__________(rf_model, model_file)


# 进行结果预测

y_pred = rf_model.__________(X_test)

results_df = pd.DataFrame(y_pred, columns=['预测结果'])

results_df.to_csv('2.2.3_results.txt', index=False)


# 使用测试工具对模型进行测试,并记录测试结果

train_score = rf_model.score(X_train, y_train)

test_score = rf_model.__________(X_test, y_test)

mse = __________(y_test, y_pred)

r2 = __________(y_test, y_pred)

with open('2.2.3_report.txt', 'w') as report_file:

    report_file.write(f'训练集得分: {train_score}\n')

    report_file.write(f'测试集得分: {test_score}\n')

    report_file.write(f'均方误差(MSE): {mse}\n')

    report_file.write(f'决定系数(R^2): {r2}\n')


# 运用工具分析算法中错误案例产生的原因并进行纠正

# 这里以XGBoost为例进行错误案例分析

xgb_model = __________.XGBRegressor(n_estimators=100, random_state=42)

xgb_model.__________(X_train, y_train)

y_pred_xgb = xgb_model.__________(X_test)


results_df_xgb = pd.DataFrame(y_pred_xgb, columns=['预测结果'])

results_df_xgb.to_csv('2.2.3_results_xgb.txt', index=False)


with open('2.2.3_report_xgb.txt', 'w') as xgb_report_file:

    xgb_report_file.write(f'XGBoost训练集得分: {xgb_model.score(X_train, y_train)}\n')

    xgb_report_file.write(f'XGBoost测试集得分: {xgb_model.__________(X_test, y_test)}\n')

    xgb_report_file.write(f'XGBoost均方误差(MSE): {__________(y_test, y_pred_xgb)}\n')

    xgb_report_file.write(f'XGBoost决定系数(R^2): {r2_score(y_test, y_pred_xgb)}\n')


2.2.4 低碳生活行为影响因素预测线性回归模型开发与测试

在应对气候变化的背景下,了解和促进低碳生活行为变得越来越重要。现要求根据提供的“大学生低碳生活行为的影响因素数据集”,补全2.2.4.ipynb代码。选择合适的特征,开发一个预测大学生低碳生活行为的模型。利用测试工具对模型进行测试,并对测试结果进行分析,完成测试报告,并运用工具对错误原因进行纠正。
(1)正确加载数据集,并显示前五行的数据。
(2)请使用线性回归模型,要求设定自变量和因变量,并根据自变量特征进行模型训练,最终将训练好的模型以文件名2.2.4_model.pkl保存到考生文件夹,结果文件以2.2.4_results.txt保存到考生文件夹。
(3)使用测试工具对模型进行测试,并记录测试结果,命名2.2.4_report.txt,保存到考生文件夹。
(4)对测试结果进行详细分析,并编写测试报告,包括模型性能评估、错误分析及改进建议,将答案写到答题卷文件中,答题卷文件命名为“2.2.4.docx”,保存到考生文件夹。
(5)运用工具分析算法中错误案例产生的原因并进行纠正,重新得到模型训练结果,以文件名2.2.4_results_xg.txt保存到考生文件夹。
 (6)将以上代码以及运行结果,以html格式保存并命名为2.2.4.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”。


代码填空


import pandas as pd

from sklearn.model_selection import train_test_split

from sklearn.linear_model import LinearRegression

from sklearn.metrics import mean_squared_error, r2_score

import joblib

from xgboost import XGBRegressor


# 加载数据集

file_path = '大学生低碳生活行为的影响因素数据集.xlsx'  # 替换为实际的数据集文件路径

data = pd.__________(file_path)


# 显示数据集的前五行

print(data.__________())


# 删除不必要的列并处理分类变量

data_cleaned = data.__________(columns=['序号', '所用时间'])  # 删除不必要的列

data_cleaned = pd.get_dummies(data_cleaned, drop_first=True)  # 将分类变量转换为哑变量/指示变量


# 定义目标变量和特征

target = '5.您进行过绿色低碳的相关生活方式吗?'  # 确保这是目标变量

features = data_cleaned.drop(columns=[target])


# 定义自变量因变量

X = __________

y = data_cleaned[__________]


# 将数据拆分为训练集和测试集

X_train, X_test, y_train, y_test = __________(X, y, test_size=0.2, random_state=42)


# 训练线性回归模型

model = __________()

model.fit(__________, y_train)


# 保存训练好的模型

model_filename = '2.2.4_model.pkl'

joblib.__________(model, model_filename)


# 进行预测

y_pred = model.__________(X_test)


# 将结果保存到文本文件中

results = pd.DataFrame({'实际值': y_test, '预测值': y_pred})

results_filename = '2.2.4_results.txt'

results.__________(results_filename, index=False, sep='\t')  # 使用制表符分隔值保存到文本文件


# 将测试结果保存到报告文件中

report_filename = '2.2.4_report.txt'

with open(report_filename, 'w') as f:

    f.write(f'均方误差: {__________(y_test, y_pred)}\n')

    f.write(f'决定系数: {__________(y_test, y_pred)}\n')

    

# 分析并纠正错误(示例:使用XGBoost)

# 训练XGBoost模型

xgb_model = __________(

    n_estimators=1000,  # 增加树的数量

    __________=0.05,  # 降低学习率

    max_depth=5,  # 调整树的深度

    subsample=0.8,  # 调整样本采样比例

    colsample_bytree=0.8  # 调整特征采样比例

)

xgb_model.fit(X_train, y_train)


# 使用XGBoost模型进行预测

y_pred_xg = xgb_model.__________(X_test)


# 将XGBoost结果保存到文本文件中

results_xg_filename = '2.2.4_results_xg.txt'

results_xg = pd.DataFrame({'实际值': y_test, '预测值': y_pred_xg})

results_xg.to_csv(results_xg_filename, index=False, sep='\t')  # 使用制表符分隔值保存到文本文件


# 将XGBoost测试结果保存到报告文件中

report_filename_xgb = '2.2.4_report_xgb.txt'

with open(report_filename_xgb, 'w') as f:

    f.write(f'均方误差: {mean_squared_error(y_test, y_pred_xg)}\n')

    f.write(f'决定系数: {__________(y_test, y_pred_xg)}\n')

2.2.5 智能步数预测模型开发与测试

随着健康意识的增强,越来越多的人开始使用智能设备跟踪自己的日常活动。准确预测每日步数对于用户来说至关重要,因为它可以帮助他们更好地管理健康状况,设定合理的运动目标,并提高生活质量。现要求根据提供的预处理好的fitness analysis数据集,补全2.2.5.ipynb代码。选择合适的特征,开发一个步数预测模型,对用户未来一段时间内的每日步数进行预测。利用测试工具对模型进行测试,并对测试结果进行分析,完成测试报告,并运用工具对错误原因进行纠正。
(1)正确加载数据集,并显示前五行的数据。
(2)请使用决策树模型,要求设定自变量和因变量(设定daily_steps为目标变量),并根据自变量特征进行模型训练,最终将训练好的模型以文件名2.2.5_model.pkl保存到考生文件夹,结果文件以2.2.5_results.txt保存到考生文件夹。
(3)使用测试工具对模型进行测试,并记录测试结果,命名2.2.5_report.txt,保存到考生文件夹。
(4)对测试结果进行详细分析,并编写测试报告,包括模型性能评估、错误分析及改进建议,将答案写到答题卷文件中,答题卷文件命名为“2.2.5.docx”,保存到考生文件夹。
 (5)将以上代码以及运行结果,以html格式保存并命名为2.2.5.html,保存到考生文件夹,考生文件夹命名为“准考证号+身份证后6位”。


代码填空


import pandas as pd

from sklearn.model_selection import train_test_split

from sklearn.tree import DecisionTreeRegressor

import pickle

from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score


# 加载数据集

df = pd.__________('fitness analysis.csv')


# 显示前五行数据

print(df.__________())


# 选择相关特征进行建模

X = df[['Your gender ', 'How important is exercise to you ?', 'How healthy do you consider yourself?']]

X = pd.get_dummies(__________)  # 将分类变量转为数值变量


# 设为目标变量

y = df['__________']  # 替换为实际的目标变量名称


# 将数据集划分为训练集和测试集

X_train, X_test, y_train, y_test = train_test_split(__________, __________, test_size=0.2, random_state=42)


# 创建并训练决策树回归模型

__________ = __________(random_state=42)

dt_model.fit(__________, y_train)


# 保存训练好的模型

with open('2.2.5_model.pkl', 'wb') as model_file:

    pickle.__________(dt_model, model_file)


# 进行预测

y_pred = dt_model.__________(X_test)


# 将结果保存到文本文件中

results = pd.DataFrame({'实际值': y_test, '预测值': y_pred})

results_filename = '2.2.5_results.txt'

results.__________(results_filename, index=False, sep='\t')  


# 将测试结果保存到报告文件中

report_filename = '2.2.5_report.txt'

with open(__________, '__________') as f:

    f.write(f'均方误差: {__________(y_test, y_pred)}\n')

    f.write(f'平均绝对误差: {__________(y_test, y_pred)}\n')

    f.write(f'决定系数: {__________(y_test, y_pred)}\n')


3.2.1 图像识别评估系统交互流程设计

图像识别评估系统是在深度学习技术日益成熟的背景下发展起来的,旨在解决传统图像识别方法在面对复杂场景和大规模数据集时的局限性。随着互联网和物联网技术的飞速发展,图像数据量呈指数级增长,对图像内容的自动理解和智能分析提出了更高的要求。ResNet作为一种深度卷积神经网络架构,凭借其深度残差连接机制,能够有效缓解梯度消失问题,实现更深层次的网络结构,从而捕获更加丰富和抽象的图像特征,极大地提高了图像识别的准确性和效率,推动了人工智能技术在现实世界中的广泛应用和商业化进程。
AI模型说明:“resnet.onnx”模型是使用 Pytorch 框架和基于深度卷积神经网络网络训练得到的,专门用于进行图像识别。对应的标签文件为“labels.txt”。该模型的使用交互流程为:
1)加载“resnet.onnx”模型和“labels.txt”类别标签;
2)加载本地测试图片“img_test.jpg”,并进行预处理图像以符合模型输入要求;
3)使用“resnet.onnx”模型对加载的图片进行识别;
4)输出加载图片的识别结果(输出概率值最大的5组类别和对应概率值)
你作为一名人工智能训练师,请完成以下工作任务:
(1)补全该模型的使用交互流程对应的Python代码(3.2.1.ipynb),实现本地测试图片“img_test.jpg”的识别,将其识别结果截图保存为jpg格式文件,命名为3.2.1-1.jpg。
(2)在上面的使用交互流程基础上,给出在图像识别评估系统中使用“resnet.onnx”模型的一种人机交互的最优方式,将其保存为docx文件,命名为3.2.1.docx。
所有结果文件储存在桌面新建的考生文件夹中,文件夹命名为“准考证号+身份证号后六位”。


代码填空


import onnxruntime as ort

import numpy as np

import scipy.special

from PIL import Image



# 预处理图像

def preprocess_image(image, resize_size=256, crop_size=224, mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]):

  image = image.resize((resize_size, resize_size), Image.BILINEAR)

  w, h = image.size

  left = (w - crop_size) / 2

  top = (h - crop_size) / 2

  image = image.crop((left, top, left + crop_size, top + crop_size))

  image = np.array(image).astype(np.float32)

  image = image / 255.0

  image = (image - mean) / std

  image = np.transpose(image, (2, 0, 1))

  image = image.reshape((1,) + image.shape)

  return image



# 模型加载 2分

session = _________________._________________('resnet.onnx')



# 加载类别标签

labels_path = 'labels.txt'

with open(labels_path) as f:

  labels = [line.strip() for line in f.readlines()]



# 获取模型输入和输出的名称

input_name = session.get_inputs()[0].name

output_name = session.get_outputs()[0].name



# 加载图片 2分

image = _________________._________________('img_test.jpg').convert('RGB')



# 预处理图片 2分

processed_image = _________________(_________________)



# 确保输入数据是 float32 类型

processed_image = processed_image.astype(np.float32)



# 进行图片识别 2分

(含图)



# 应用 softmax 函数获取概率 2分

(含图)



# 获取最高的5个概率和对应的类别索引 2分

top5_idx = np._________________(probabilities[0])[-5:][::-1]

top5_prob = _________________[0][top5_idx]



# 打印结果

print("Top 5 predicted classes:")

for i in range(5):

  print(f"{i+1}: {labels[top5_idx[i]]} - Probability: {top5_prob[i]}")



3.2.2 手写数字识别系统交互流程设计

手写数字识别系统是在数字化转型和自动化需求日益增长的社会背景下应运而生的。随着信息时代的到来,大量手写文档需要进行电子化处理,以提高数据存储、检索和分析的效率。传统的光学字符识别(OCR)技术在处理手写体时面临诸多挑战,如书写风格的多样性、笔迹的连笔和重叠等,导致识别率不高。然而,深度学习的兴起,尤其是卷积神经网络(CNN)的发展,为手写数字的精准识别提供了强大的工具。
AI模型说明:提供的模型“mnist.onnx”是基于卷积神经网络训练得到的,专门用于进行手写数字的识别应用。该模型的使用交互流程为:
1)加载模型“mnist.onnx”;
2)加载一张本地手写数字图片“img_test.png”,并进行预处理图像以符合模型输入要求;
3)使用mnist模型对手写数字图片进行识别;
4)输出识别后的数字。
你作为一名人工智能训练师,请完成以下工作任务:
(1)补全该模型的使用交互流程对应的Python代码(3.2.2.ipynb),实现本地测试图片“img_test.png”的识别,将其识别结果截图保存为jpg格式文件,命名为3.2.2-1.jpg。
(2)在上面的使用交互流程基础上,给出在手写数字识别系统中使用“mnist.onnx”模型的一种人机交互的最优流程,将其保存为docx文件,命名为3.2.2.docx。
所有结果文件储存在桌面新建的考生文件夹中,文件夹命名为“准考证号+身份证号后六位”。


代码填空


(含图)


3.2.3 面部表情识别系统交互流程设

面部表情识别系统是一种先进的计算机视觉技术,它能够分析人脸的微表情,识别出诸如快乐、悲伤、惊讶等基本情绪。通过捕捉和解读面部特征,如眼睛、眉毛和嘴部的动作,这类系统能在实时或预录的视频中判断人的情感状态,广泛应用于人机交互、市场调研、医疗健康监测、安全监控及教育科技等多个领域,为提升用户体验、增进情感智能和优化社会服务提供了有力工具。
AI模型说明:提供的已训练的模型“emotion-ferplus.onnx”,其专门用于进行面部表情识别。定义情感类别与数字标签的映射表为{'neutral':0, 'happiness':1, 'surprise':2, 'sadness':3, 'anger':4, 'disgust':5, 'fear':6, 'contempt':7}。
该模型的使用交互流程为:
1)加载模型“emotion-ferplus.onnx”和加载情感类别与数字标签的映射表;
2)加载一张本地图片“img_test.png”,并预处理图像;
3)使用已训练的模型对图片面部表情识别;
4)输出识别后的表情标签。
你作为一名人工智能训练师,请完成以下工作任务:
(1)补全该模型的使用交互流程对应的Python代码(3.2.3.ipynb),实现本地测试图片“img_test.png”的识别,将其识别结果截图保存为jpg格式文件,命名为3.2.3-1.jpg。
(2)在上面的使用交互流程基础上,给出在面部表情识别系统中使用“emotion-ferplus.onnx”模型的一种人机交互的最优方式,将其保存为docx文件,命名为3.2.3.docx。
 所有结果文件储存在桌面新建的考生文件夹中,文件夹命名为“准考证号+身份证号后六位”。


代码填空


(含图)

(含图)


3.2.4 花朵智能识别系统交互流程设计

花朵智能识别系统在现代城市绿化管理中起着越来越重要的作用,其利用先进的计算机视觉技术,如花朵检测与识别,实现了对花朵种类的实时监控与管理。本系统要求开发一个基于已训练模型的花朵检测与分类系统,能够准确识别出不同类别的花朵。
AI模型说明:提供的模型“flower-detection.onnx”是使用 Pytorch 框架和基于深度卷积神经网络训练得到的,专门用于进行花朵识别。对应的标签文件为“labels.txt”。 该模型的使用交互流程为:
1)加载模型“flower-detection.onnx”和加载类别标签“labels.txt”;
2)加载一张本地花朵图片“flower_test.png”,并预处理图像;
3)使用flower-detection模型对花朵图片进行识别;
4)输出花朵的预测类型和识别的准确率。
你作为一名人工智能训练师,请完成以下工作任务:
(1)补全该模型的使用交互流程对应的Python代码(3.2.4.ipynb),实现本地测试图片“flower _test.png”的识别,将其识别结果截图保存为jpg格式文件,命名为3.2.4-1.jpg。
(2)在上面的使用交互流程基础上,给出在花朵智能识别系统中使用“flower-detection.onnx”模型的一种人机交互的最优流程,将其保存为docx文件,命名为3.2.4.docx。
所有结果文件储存在桌面新建的考生文件夹中,文件夹命名为“准考证号+身份证号后六位”。


代码填空


(含图)(含图)

1