人工智能训练师(三级)实操考试 — 1.1.5 智能交通系统的数据采集、处理和审核流程设计

← 返回题目列表 考核时间:30 分钟 30:00
工作任务

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

提供一个车辆行驶数据集(vehicle_traffic_data.csv),包含以下字段:

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

具体要求

(1)数据采集:从本地文件 vehicle_traffic_data.csv 中读取数据,加载到 DataFrame 中,显示前5行数据。截图保存为 1.1.5-1.jpg

(2)数据清洗与预处理:处理缺失值(删除);数据类型转换(Age→int, Speed→float, TravelDistance→float, TravelTime→float);处理异常值(年龄18-70, 车速0-200, 距离1-1000, 时间1-1440);保存为 cleaned_vehicle_traffic_data.csv。

(3)数据合理性审核:审核年龄(18-70岁)、车速(0-200 km/h)、行驶距离(1-1000 km)、行驶时间(1-1440分钟)的合理性,标记不合理数据。截图保存为 1.1.5-2.jpg

(4)数据统计:统计每种交通事件的发生次数;统计不同性别的平均车速、行驶距离和行驶时间;统计不同年龄段的驾驶员数(18-25、26-35、36-45、46-55、56-65、65+)。截图分别保存为 1.1.5-31.1.5-41.1.5-5

注意事项
  • 在代码的 橙色下划线 处填写正确的 Python 代码
  • 请勿修改源代码的其他部分
  • 填写完成后点击 "检查答案" 查看评分
  • 点击 "显示答案" 可直接查看所有参考答案
  • 点击 "重置" 清空所有填写内容
请在下划线处填写代码
当前得分
0 / 23
In [1] — 数据采集 4分
import pandas as pd import numpy as np import matplotlib.pyplot as plt # 1. 数据采集 # 从本地文件中读取数据 2分 data = print("数据采集完成,已加载到DataFrame中") # 打印数据的前5条记录 2分 print()
In [2] — 数据清洗与预处理 9分
# 2. 数据清洗与预处理 # 处理缺失值(删除) 2分 data = # 数据类型转换 data = (int) #Age数据类型转换为int 1分 data = (float) #Speed数据类型转换为float 1分 data = (float) #TravelDistance数据类型转换为float 1分 data = (float) #TravelTime数据类型转换为float 1分 # 处理异常值 2分 data = data[((18, 70)) & ((0, 200)) & ((1, 1000)) & ((1, 1440))] # 保存清洗后的数据 1分 ('cleaned_vehicle_traffic_data.csv', index=False) print("数据清洗完成,已保存为 'cleaned_vehicle_traffic_data.csv'")
In [3] — 数据合理性审核与统计 10分
# 3. 数据合理性审核 # 审核字段合理性 1分 unreasonable_data = data[~(((18, 70)) & ((0, 200)) & ((1, 1000)) & ((1, 1440)))] print("不合理的数据:\n", unreasonable_data) # 4. 数据统计 # 统计每种交通事件的发生次数 2分 traffic_event_counts = print("每种交通事件的发生次数:\n", traffic_event_counts) # 统计不同性别的平均车速、行驶距离和行驶时间 2分 gender_stats = data.. print("不同性别的平均车速、行驶距离和行驶时间:\n", gender_stats) # 统计不同年龄段的驾驶员数 5分 age_bins = [18, 26, 36, 46, 56, 66, np.inf] age_labels = ['18-25', '26-35', '36-45', '46-55', '56-65', '65+'] data['AgeGroup'] = (,,, right=False) age_group_counts = print("不同年龄段的驾驶员数:\n", age_group_counts)
答案检查结果