QC7_BatchInputThresholdCheck 批量阈值检验(输入框) Skill
功能概述
本skill用于将数据表中的字段值与用户输入的阈值条件(上下限)进行批量比对,识别并标记超出允许范围(包括上限和下限)或为空值的数据点。
触发条件
当用户请求以下任务时,应使用此skill:
- 批量阈值检验
- 输入框阈值检验
- 多字段阈值检查
- 范围校验
- 检查数值是否在输入的阈值范围内
- 批量输入范围检查
处理逻辑
- 解析用户输入的阈值条件(格式:字段名,最大值,最小值)
- 读取被检验数据
- 遍历阈值映射表,检查每个字段:
- 如果字段值为空,标记为异常
- 如果字段值超出最大值或小于最小值,标记为异常
- 为异常数据添加质控标识(格式:QC7(异常字段1,异常字段2,...))
- 输出处理后的数据文件
支持的文件格式
- CSV (.csv)
- TSV (.tsv)
- Excel (.xls, .xlsx)
- SPSS (.sav)
使用方法
步骤1:获取用户输入输出路径及参数
向用户确认:
- 输入文件路径
- 输出文件路径
- 阈值检验条件(格式:字段名,最大值,最小值,多行用换行分隔)
- 质控标识(如:QC7)
- 质控标识字段名(默认:QC0000)
步骤2:执行批量阈值检验脚本
在 scripts/ 目录下找到 QC7_BatchInputThresholdCheck.py,使用Python执行:
python scripts/QC7_BatchInputThresholdCheck.py \
--input-path <输入文件> \
--output-path <输出文件> \
--conditions "<阈值条件>" \
--qc-mark "<质控标识>" \
--mark-field-name <质控字段名>
步骤3:返回结果
告知用户处理完成,异常数据已标记质控标识。
参数说明
| 参数 |
必填 |
说明 |
--input-path |
是 |
输入文件路径 |
--output-path |
是 |
输出文件路径 |
--conditions |
是 |
阈值条件,格式:字段名,最大值,最小值,多行用换行分隔 |
--qc-mark |
是 |
质控标识 |
--mark-field-name |
否 |
质控标识字段名,默认QC0000 |
阈值条件格式
每行格式:字段名,最大值,最小值
示例:
Temp,36,-5
pH,14,0
age,120,0
表示:
- Temp字段值需要在-5到36之间
- pH字段值需要在0到14之间
- age字段值需要在0到120之间
输出示例
[OK] Using encoding GB2312 successfully read CSV file
Successfully read file: /path/to/input.csv, shape: (1000, 18)
Successfully written file: /path/to/output.csv
质控标识格式示例:QC7(Temp,pH) 表示Temp和pH字段超出阈值范围
注意事项
- 阈值条件格式:字段名,最大值,最小值,每行一个字段
- 超出阈值范围或为空的值都会被标记
- 质控标识格式:质控标识(异常字段1,异常字段2,...)
- 多个异常字段用逗号分隔
- 与原有质控标识用分号拼接
1---2name: qc7-batchinputthresholdcheck3description: 批量阈值检验-输入框工具。读取被检验表,将数据列的值与输入阈值条件中定义的上下限进行比对, 识别并标记超出允许范围(包括上限和下限)或为空值的数据点,最后输出为相同格式的文件。 当用户提到批量阈值检验、输入框阈值检验、多字段阈值检查、范围校验等需求时使用此skill。 即使用户没有明确说出"批量阈值输入框",只要任务涉及根据输入的阈值条件进行批量范围校验,就应该使用此skill。4---56# QC7_BatchInputThresholdCheck 批量阈值检验(输入框) Skill78## 功能概述910本skill用于将数据表中的字段值与用户输入的阈值条件(上下限)进行批量比对,识别并标记超出允许范围(包括上限和下限)或为空值的数据点。1112## 触发条件1314当用户请求以下任务时,应使用此skill:15- 批量阈值检验16- 输入框阈值检验17- 多字段阈值检查18- 范围校验19- 检查数值是否在输入的阈值范围内20- 批量输入范围检查2122## 处理逻辑23241. 解析用户输入的阈值条件(格式:字段名,最大值,最小值)252. 读取被检验数据263. 遍历阈值映射表,检查每个字段:27 - 如果字段值为空,标记为异常28 - 如果字段值超出最大值或小于最小值,标记为异常294. 为异常数据添加质控标识(格式:QC7(异常字段1,异常字段2,...))305. 输出处理后的数据文件3132## 支持的文件格式3334- CSV (.csv)35- TSV (.tsv)36- Excel (.xls, .xlsx)37- SPSS (.sav)3839## 使用方法4041### 步骤1:获取用户输入输出路径及参数4243向用户确认:441. 输入文件路径452. 输出文件路径463. 阈值检验条件(格式:字段名,最大值,最小值,多行用换行分隔)474. 质控标识(如:QC7)485. 质控标识字段名(默认:QC0000)4950### 步骤2:执行批量阈值检验脚本5152在 `scripts/` 目录下找到 `QC7_BatchInputThresholdCheck.py`,使用Python执行:5354```bash55python scripts/QC7_BatchInputThresholdCheck.py \56 --input-path <输入文件> \57 --output-path <输出文件> \58 --conditions "<阈值条件>" \59 --qc-mark "<质控标识>" \60 --mark-field-name <质控字段名>61```6263### 步骤3:返回结果6465告知用户处理完成,异常数据已标记质控标识。6667## 参数说明6869| 参数 | 必填 | 说明 |70|------|------|------|71| `--input-path` | 是 | 输入文件路径 |72| `--output-path` | 是 | 输出文件路径 |73| `--conditions` | 是 | 阈值条件,格式:字段名,最大值,最小值,多行用换行分隔 |74| `--qc-mark` | 是 | 质控标识 |75| `--mark-field-name` | 否 | 质控标识字段名,默认QC0000 |7677## 阈值条件格式7879每行格式:`字段名,最大值,最小值`8081示例:82```83Temp,36,-584pH,14,085age,120,086```8788表示:89- Temp字段值需要在-5到36之间90- pH字段值需要在0到14之间91- age字段值需要在0到120之间9293## 输出示例9495```96[OK] Using encoding GB2312 successfully read CSV file97Successfully read file: /path/to/input.csv, shape: (1000, 18)98Successfully written file: /path/to/output.csv99```100101质控标识格式示例:`QC7(Temp,pH)` 表示Temp和pH字段超出阈值范围102103## 注意事项1041051. 阈值条件格式:字段名,最大值,最小值,每行一个字段1062. 超出阈值范围或为空的值都会被标记1073. 质控标识格式:质控标识(异常字段1,异常字段2,...)1084. 多个异常字段用逗号分隔1095. 与原有质控标识用分号拼接