本文へ移動
cccskills
無料GitHub で公開

cross_field_comparison_check

跨字段比较校验工具。读取结构化数据文件(CSV、TSV、Excel等),检查两个字段之间的逻辑约束关系 是否满足(如 start < end、min ≤ max、price >= cost),支持六种比较运算符,多约束可组合使用。当用户提到跨字段校验、字段间比较、逻辑约束检查、大小关系验证等需求时使用此skill。

即使用户没有明确说出"跨字段",只要任务涉及验证两个字段值之间的逻辑关系,就应该使用此skill。

インストール方法を見る

含まれるファイル(4)

  • SKILL.md5.6 KB
  • scripts/cross_field_comparison_check.py2.6 KB
  • scripts/data_io.py3.5 KB
  • skill.json1.8 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

cross_field_comparison_check 跨字段比较校验Skill

功能概述

本skill用于逐行验证两个字段值之间的逻辑关系是否成立。典型应用场景:

  • 时间区间校验:start_time < end_time
  • 数值范围校验:min_value <= max_value
  • 价格逻辑校验:cost < price
  • 库存校验:sold <= total

支持运算符

运算符含义示例
<小于start,<,end
<=小于等于min,<=,max
>大于end,>,start
>=大于等于current,>=,baseline
==等于computed,==,expected
!=不等于status,!=,deleted

约束格式

  • 每个约束:左字段,运算符,右字段
  • 多个约束用 | 分隔
  • 约束之间为 AND 关系(任一违反即标记)
  • 示例:start,<,end|min,<=,max 表示同时满足 start<end 且 min≤max

触发条件

当用户请求以下任务时,应使用此skill:

  • 跨字段比较校验
  • 字段间逻辑约束检查
  • 大小关系验证
  • 字段值一致性比对
  • 数据逻辑规则检查

处理逻辑

  1. 读取输入数据表
  2. 解析 constraints 字符串,拆分出每个约束(按 | 分割)
  3. 对每行数据: a. 提取左右字段的值并转为数值(numeric) b. 按指定运算符比较 c. 违反任一约束 → 标记 qc_mark
  4. 非数值数据(如字符串)转为 NaN 后跳过该约束的比较
  5. 输出标记结果和统计摘要

支持的文件格式

  • CSV (.csv)
  • TSV (.tsv)
  • Excel (.xls, .xlsx)
  • SPSS (.sav)

使用方法

步骤1:获取用户输入输出路径及参数

向用户确认:

  1. 输入文件路径(需要校验的文件)
  2. 输出文件路径(校验结果文件)
  3. 约束表达式(格式:左字段,运算符,右字段|...)
  4. 质控标识

步骤2:执行跨字段比较校验脚本

在 scripts/ 目录下找到 cross_field_comparison_check.py,使用Python执行:

单约束(时间区间):

python scripts/cross_field_comparison_check.py \
    --input_path data.csv \
    --output_path checked.csv \
    --constraints "start_time,<,end_time" \
    --qc_mark QCFLAG

多约束(范围+价格):

python scripts/cross_field_comparison_check.py \
    --input_path data.csv \
    --output_path checked.csv \
    --constraints "start,<,end|min,<=,max|cost,<=,price" \
    --qc_mark QCFLAG

步骤3:返回结果

脚本执行完成后,告知用户:

  • 每条约束的违反行数
  • 示例违反数据
  • 总标记行数

参数说明

参数必填说明
--input_path是输入文件路径(支持CSV/TSV/Excel/SPSS)
--output_path是输出文件路径
--constraints是约束表达式,`
--qc_mark是质控标识(如QC标识)
--mark_field_name否质控标识字段名(默认QC0000)

输出示例

发现问题

[OK] Using encoding UTF-8 successfully read CSV file
Successfully read file: /path/to/data.csv, shape: (500, 8)
Constraints: start < end | min <= max
[QC FAIL] 跨字段比较校验未通过 (2 项问题):
  [start < end] 3 行违反 (示例: 行42 start=100 > end=80)
  [min <= max] 5 行违反 (示例: 行126 min=50 > max=30)
已标记 8 行
Successfully written file: /path/to/checked.csv

通过

[OK] Using encoding UTF-8 successfully read CSV file
Successfully read file: /path/to/data.csv, shape: (300, 6)
Constraints: start < end | cost <= price
[QC PASS] 跨字段比较校验通过
Successfully written file: /path/to/checked.csv

注意事项

  1. 输入输出路径需要用户提供
  2. 输出文件格式会自动保持与输入文件一致
  3. 约束分隔符规则:
    • 约束内部用半角逗号 , 分隔(左字段,运算符,右字段)
    • 约束之间用竖线 | 分隔
  4. 数值类型:字段值强制转为 numeric,非数值按 NaN 处理并跳过该行
  5. 约束之间为 AND 关系:每条约束独立判断,任一违反即标记该行
  6. 被比较的两个字段名在表中必须存在,否则报错退出
  7. 如果用户没有指定输出路径,可以建议使用原文件名加上 _checked 后缀

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

领域缩略语展开 Skill:按内置或外部词典将独立缩略语替换为全称,可选在全称后保留原缩写。 适用于技术文本、论文摘要和业务记录中的缩写清洗;不负责模糊缩写消歧或大小写无关替换。

日本語の概要は準備中です。原文の説明を表示しています。

cas-bigdatalab/piflow5412026年9月22日 更新

字母数字比例过滤器。过滤文本中字母/数字比例不在指定范围内的样本。 当用户提到文本过滤、比例筛选、字母比例、数字比例、清理乱码文本等需求时使用此skill。 即使用户没有明确说出"过滤",只要任务涉及根据文本中字母或数字的比例来筛选数据, 就应该使用此skill。

日本語の概要は準備中です。原文の説明を表示しています。

cas-bigdatalab/piflow5412026年9月22日 更新

平均行长度过滤器。过滤文本平均行长度不在指定范围内的样本。 当用户提到行长度过滤、平均行长度、文本行长度筛选、按行筛选等需求时使用此skill。 即使用户没有明确说出"平均行长度",只要任务涉及根据文本中每行的平均长度来筛选数据, 就应该使用此skill。

日本語の概要は準備中です。原文の説明を表示しています。

cas-bigdatalab/piflow5412026年9月22日 更新

批量文件清单采集器。扫描一个或多个本地文件/目录,或从任务列表加载路径, 按支持的扩展名生成文件元信息清单,供后续文本、表格、文档、图像等采集流程继续处理。 当用户需要批量盘点待采集文件、生成本地文件 manifest、统计输入文件类型或为后续采集算子准备文件清单时使用此 skill。

日本語の概要は準備中です。原文の説明を表示しています。

cas-bigdatalab/piflow5412026年9月22日 更新

批量数据均匀分片工具。读取json/jsonl/csv输入,按份数或固定条数切成多个子文件,输出一个清单JSON供下游节点消费。 当用户提到数据分割、批量拆分、数据分片、均匀分块等需求时使用此skill。 即使用户没有明确说出"分片",只要任务是把整份批量数据均匀拆成多个文件,就应该使用此skill。 不负责按字段分组导出或随机采样。

日本語の概要は準備中です。原文の説明を表示しています。

cas-bigdatalab/piflow5412026年9月22日 更新

本skill是用于单细胞测序数据分析的专用技能,首先需要用户上传需要处理的单细胞测序数据,再对经过预处理的单细胞表达数据进行自动化细胞类型注释。它通过基因比对、数据标准化、降维等一系列流程,将细胞聚类结果与已知参考数据库进行匹配,从而为每个细胞分配生物学功能标签。

日本語の概要は準備中です。原文の説明を表示しています。

cas-bigdatalab/piflow5412026年9月22日 更新

cas-bigdatalab のスキルをすべて見る

このスキルの問題を報告する