在备考人工智能训练师三级考试的过程中,环境配置与函数速查无疑是两大核心要点。建议优先掌握 Conda 虚拟环境的搭建方法,再将常用函数熟练于心,这样实操题便能迎刃而解。以下整理出关键步骤与速查表,便于集中复习与高效备考。
环境配置
借助 Anaconda 管理依赖包时,推荐新建一个专用虚拟环境,以避开与本机其他项目的冲突。基础命令如下:
conda env list # 查看已有环境
conda create -n ai python=3.10 # 创建新环境
conda activate ai # 进入环境
conda install pandas # 安装库
conda list # 查看已安装库
conda update pandas # 更新库
conda remove pandas # 卸载库
conda deactivate # 退出环境
针对人工智能训练师三级考试,建议创建专属环境并安装核心依赖包,随后进入素材文件夹启动 jupyter notebook:
conda create -n ai_trainer python=3.10
conda activate ai_trainer
conda install pandas numpy matplotlib openpyxl jupyter scikit-learn -y
# Mac上安装指定版本的onnxruntime和protobuf
pip install onnxruntime==1.16.0 protobuf==3.20.3 -i https://pypi.tuna.tsinghua.edu.cn/simple
cd D:/AI/training/05-评价指导手册(上网)人工智能训练师_3级_sucai
jupyter notebook
函数速查表
标红部分(加粗)为考试原题,建议集中背诵掌握。
| 章节 | 功能 | 代码 |
|---|---|---|
| 1.1.1 | read_csv() 用于读取 CSV 文件 | data = pd.read_csv("patient_data.csv") |
| 1.1.1 | .head() 显示 DataFrame 前 5 行 | data.head() |
| 1.1.1‼️ | len(data) 计算数据行数,常作为分母计算比例 | len(data) |
| 1.1.1 | where 根据条件筛选并赋值 | data['RiskLevel'] = np.where(data['DaysInHospital'] > 7, '高风险患者', '低风险患者') |
| 1.1.1 | value_counts 按指定列分类计数,返回频次表 | data['RiskLevel'].value_counts() |
| 1.1.1 | cut 分箱函数:传入索引列、划分节点、标签、端点开闭 | data['BMIRange'] = pd.cut(data['BMI'], bins=bmi_bins, labels=bmi_labels, right=False) |
| 1.1.1 | groupby 分组后结合 lambda 计算条件均值(高风险为1,低风险为0) | bmi_risk_rate = data.groupby('BMIRange')['RiskLevel'].apply(lambda x: (x == '高风险患者').mean()) |
| 1.1.2‼️ | agg 分组聚合函数,可对指定列计算 count、mean 等统计量,注意使用中括号 | sensor_stats = data.groupby('SensorType')['Value'].agg(['count', 'mean']) |
| 1.1.2‼️ | 筛选满足 isin 条件的行,配合 groupby 与 unstack 转换多级索引最后一层为列 | location_stats = data[data['SensorType'].isin(['Humidity','Temperature'])].groupby(['Location','SensorType'])['Value'].mean().unstack() |
| 1.1.2‼️ | 使用 where 标记温度传感器中不合理的值,注意双等号 | np.where(((data['SensorType']=='Temperature') & (data['Value'] > 50))... |
| 1.1.2‼️ | sum() 统计 is_abnormal 为 True 的数量(True 视为1 求和) | data['is_abnormal'].sum() |
| 1.1.2 | .fillna() 填充空值,ffill 用前值填充,bfill 用后值填充 | data['Value'].fillna(method='ffill', inplace=True) |
| 1.1.2 | drop() 删除指定列 | data.drop(columns=['is_abnormal']) |
| 1.1.2 | to_csv 保存为 CSV 文件,index=False 表示不输出行索引 | cleaned_data.to_csv('cleaned_sensor_data.csv', index=False) |

