阿拉丁·Excel 数据工坊(aladin-excel-forge)
阿拉丁出品。你用 aladin-pdf-forge 把 PDF 解析成了结构化数据、excel-chart-builder 把干净数据画成了图表——但两者之间缺了一块最痛的「表格入口层」:脏数据怎么洗?怎么去重?怎么透视?怎么校验? skillhub 上 Excel 向需求很旺(
office-efficiency赛道excel-sync-bitable已 1 万+ 下载、wps-office-suite头部常驻),可它们要么必须绑飞书,要么必须装 Office/WPS,没有一款纯本地、零依赖、零账号就能把 Excel/CSV/TSV 洗干净的工坊。这个技能把表格数据工程收口成一套纯本地、零依赖、离线可用的工具链:你给一份表格(或一整个目录),它产出清洗后数据 + 透视表 + 校验报告 + 可视化数据体检 HTML,并把干净数据顺手喂给 excel-chart-builder 画图。
它解决什么痛点
用户在 skillhub 上能找到的"Excel 向"工具都有硬依赖:
| 现有飙升/常见技能 | 只做 | 卡在哪 |
|------------------|------|--------|
| excel-sync-bitable(office-efficiency 头部,1万+) | 表格同步到飞书多维表 | 必须绑飞书账号/MCP,离线不可用 |
| wps-office-suite(office 头部常驻) | 调 WPS 读写表格 | 必须装 Office/WPS,无安装则不可用 |
| excel-chart-builder(自家) | 把数据画成图 | 只画图,不做数据清洗/透视/校验 |
| 各类 pandas 脚本 | 灵活处理 | 需 pip install pandas openpyxl,环境易冲突 |
本技能 = Excel 数据工程全链路,脚本零依赖(仅 Python 标准库)、纯本地、离线可用,且比上述技能多出 清洗 + 去重 + 透视 + 校验 + 合并 + 数据体检报告。
与 skillhub 现有技能 + 自家 aladin 系列的差异化
| 能力 | excel-sync-bitable | wps-office-suite | excel-chart-builder | 阿拉丁·Excel 数据工坊(本款) | |------|--------------------|--------------------|--------------------|-------------------------------| | 零依赖 / 离线 | ✗(需飞书) | ✗(需Office) | ✓ | ✓ 纯标准库 | | Excel/CSV/TSV 导入 | 部分 | ✓ | ✓ | ✓ 含类型推断 | | 清洗 / trim / 缺失填充 | ✗ | ✗ | ✗ | ✓ | | 整行 / 按列去重 | ✗ | ✗ | ✗ | ✓ | | 透视表(一维/二维) | ✗ | 部分 | ✗ | ✓ | | 规则校验(非空/唯一/范围/正则/枚举) | ✗ | ✗ | ✗ | ✓ | | 类 VLOOKUP 合并两表 | ✗ | 部分 | ✗ | ✓ | | 数据体检报告(HTML/MD/JSON) | ✗ | ✗ | ✗ | ✓ | | 画图 | ✗ | ✗ | ✓ | 联动 chart-builder |
何时触发
- "帮我把这份 Excel 清洗一下 / 去个重" / "CSV 里有重复行要去掉"
- "把 A 表和 B 表按 id 合并(VLOOKUP)" / "两表关联"
- "做个透视表,按地区统计销售额" / "Excel 透视"
- "校验一下这列手机号格式对不对 / 年龄有没有超范围" / "数据校验"
- "表格里缺的值帮我补上(填 0 / 均值)" / "缺失值填充"
- "给我出一份数据质量体检报告" / "这份表质量怎么样"
- "把这一堆 Excel/CSV 批量洗一遍" / "目录里所有表格清洗"
- 用户给出表格路径或目录,想落地成干净数据(→ 联动 excel-chart-builder 画图、aladin-doc-forge 出文档)
何时不触发
- 用户要生成/创建图表(柱状/折线/饼图)——用 excel-chart-builder,本款只做数据工程不画图
- 用户要联网同步到飞书多维表——用 excel-sync-bitable,本款是离线本地处理
- 用户要写回复杂 Excel 样式/公式(带格式模板回填)——本款写出的是最小合法 xlsx(数值/文本),不保样式
- 用户要搜索/安装别人的技能——用 find skill / skillhub install
- 用户要审计技能安全——用 aladin-secure-forge / Skill Auditor
能力边界
能做:
- 多源导入:xlsx / csv / tsv(自动识别编码 utf-8-sig / gbk),含表头自动识别、逐列类型推断(整数/小数/百分比/日期/布尔/文本/空)、逐列统计(缺失率/唯一值/最值/样例)
- 清洗:trim 首尾空格、删除全空行/全空列、缺失值填充(0 / 均值 / 前向填充)、类型强制标注
- 去重:整行去重、按指定列组合去重(保留首条)
- 透视:一维(行维度+值+聚合)或二维(再加列维度),聚合支持 sum/mean/count/min/max/first
- 校验:规则驱动——非空(not_null)、唯一(unique)、范围(range)、正则(regex)、枚举(in),输出问题行列明细
- 合并:类 VLOOKUP,按 key 把右表字段关联进左表(left/inner)
- 报告:可视化数据体检 HTML(交互式表格 + 指标卡 + 操作流水 + 校验明细 + 透视预览)、Markdown 报告、JSON 摘要
- 批量:
--dir递归扫描整目录表格
不能做:
- 不能写回带格式的 Excel(不保留原样式/公式/条件格式,写出最小合法 xlsx)
- 不能做图表(画图交给 excel-chart-builder)
- 不能联网同步(飞书/云盘同步不在范围)
- 不能保证任意畸形 xlsx 100% 解析(极少数加密/损坏文件可能失败,会报 FAIL 不中断整批)
- 不能绕过 skillhub 安全审核
输入输出规范
输入(任选其一):
--file:单个 xlsx/csv/tsv--dir:目录(批量处理其中所有 xlsx/csv/tsv)- 输出统一写入
--out目录
输出(每个文件一套,位于 --out):
<stem>_ir.json:导入中间表示(表头/类型/统计/质量初判)<stem>_clean.csv(或.xlsx):清洗后明细<stem>_clean_ir.json:更新后的 IR(含校验结果)<stem>_pivot.csv:透视表(可选)<stem>_ops.json:操作流水日志<stem>_report.html:可视化数据体检报告(交互)<stem>_report.md:Markdown 报告<stem>_report.json:结构化摘要manifest.json:批量处理清单
工作流
Step 1:导入归一(excel_ingest.py)
PY="C:/Users/adam/.workbuddy/binaries/python/versions/3.13.12/python.exe"
SKILL="<本技能目录>"
# 单个文件
"$PY" "$SKILL/scripts/excel_ingest.py" --file "./data.xlsx" --out ./build
# 或整目录批量
"$PY" "$SKILL/scripts/excel_ingest.py" --dir "./tables" --out ./build
产出 <stem>_ir.json + manifest.json(批量)。
Step 2:清洗 / 去重 / 透视 / 校验 / 合并(excel_clean.py)
# 去重 + 规整 + 缺失填 0
"$PY" "$SKILL/scripts/excel_clean.py" --ir ./build/data_ir.json --out ./build \
--dedup full --trim --fill 0
# 透视:按地区统计销售额总和,再按季度分列
"$PY" "$SKILL/scripts/excel_clean.py" --ir ./build/data_ir.json --out ./build \
--pivot "row=地区;val=销售额;agg=sum;col=季度" --xlsx
# 校验规则
"$PY" "$SKILL/scripts/excel_clean.py" --ir ./build/data_ir.json --out ./build \
--validate ./build/rules.json
# 合并两表(类 VLOOKUP):左表为已加载的 --ir,right 指定右表
"$PY" "$SKILL/scripts/excel_clean.py" --ir ./build/orders_ir.json --out ./build \
--merge "right=users_ir.json;on=user_id;how=left"
算子可叠加,按顺序执行;结果分别写出 _clean / _pivot 与 _ops.json。
Step 3:生成数据体检报告(excel_report.py)
"$PY" "$SKILL/scripts/excel_report.py" --ir ./build/data_clean_ir.json \
--ops ./build/data_ops.json --pivot ./build/data_pivot.csv --out ./build
产出 _report.html(在浏览器打开即可交互查看)、_report.md、_report.json。
Step 4:由 Hy3 完成数据洞察(可选)
读取 _report.md / _report.json,基于字段质量、校验问题与透视结果,由 Hy3 模型生成:一句话数据结论 + 3 个关键发现 + 建议的后续处理动作,回填或随报告一并交付。
复用资源
| 文件 | 用途 | 加载时机 |
|------|------|----------|
| references/usage-examples.md | 4 个完整场景(销售对账/客户去重/问卷清洗/跨表合并)+ 最佳实践 + FAQ | 用户要具体样例或落地参考时加载 |
| references/validation-rules.md | 校验规则 JSON 格式与示例(非空/唯一/范围/正则/枚举) | 用户配置 --validate 时加载 |
| references/pivot-guide.md | 透视表达式写法与一维/二维示例 | 用户用 --pivot 时加载 |
| references/formula-cookbook.md | 常见表格运算公式(由 Hy3 语义转写)速查 | 用户要"帮我算一列同比/占比"类诉求时加载 |
重要约束
- 零依赖:三脚本仅用 Python 标准库,离线可跑,不要求 pip 安装(→ Reliability)
- 不编造数据:清洗严格基于表格实际内容,不去重时不丢非重复行、不臆造单元格(→ Trust)
- 失败隔离:批量
--dir逐文件处理,单文件失败记 FAIL 不中断整批(→ Reliability) - ** xlsx 最小合法**:写出的 xlsx 仅含数值/文本,不保样式;如需样式请用 WPS/Office 二次打开(→ Convention)
- 校验不改数据:--validate 仅标注问题,不自动删除/修改,留给人决策(→ Trust)
- 报告由 Hy3 填充洞察:数据结论/建议交由 Hy3 模型基于真实统计生成,不预置虚假结论(→ Trust)
- description 单行:禁用 YAML 多行语法,保持可发布(→ Convention)
与 aladin 工程链的关系
本技能是 aladin 工程链在「表格入口层」的延伸——在 pdf-forge(非结构化→结构化)、doc-forge(代码→文档)、chart-builder(数据→图) 之间,把最常见的"脏表格"先洗成干净数据:清洗产物可直接交给 excel-chart-builder 画图,校验报告可喂给 doc-forge 出质量文档,规整后的明细可交给 omni-note-forge 做成知识卡片。
Scan to join WeChat group