安装与下载
1 ClawHub CLI
从源直接安装技能的最快方式。
npx clawhub@latest install excel-data-cleaner
2 手动安装
将技能文件夹复制到以下位置之一
~/.openclaw/skills/
{'/skills/'}
优先级:工作区 › 全局 › 内置
3 提示词安装
将此提示词复制到 Openclaw 即可自动安装。
请帮我使用 Clawhub 安装 skill-excel-data-cleaner。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。
更倾向于下载?
获取包含原生技能文件的ZIP压缩包。
基本信息
excel-data-cleaner
安装指南
- ClawHub CLI
从源直接安装技能的最快方式。
npx clawhub@latest install excel-data-cleaner - 手动安装
将技能文件夹复制到以下位置之一
全局模式
~/.openclaw/skills/
工作区
/skills/
优先级:工作区 > 本地 > 内置 - 提示词安装
将此提示词复制到 OpenClaw 即可自动安装。
请帮我使用 Clawhub 安装 excel-data-cleaner。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。
更倾向于下载?
获取包含原生技能文件的ZIP压缩包。
下载技能 (.zip)
什么是
Excel 数据清理器是一个 Openclaw Skills 工作流,可将原始 XLSX、XLS 和 CSV 文件转换为可靠、可用于分析的数据集。它采用透明流程——数据概况分析、策略确认、确定性清理、验证、统计分析和面向业务的结论——而不是悄悄修改用户数据。
该技能使用脚本执行可复现操作,例如去重、缺失值处理、文本规范化和异常值检测,然后生成清理后的文件和 Markdown 报告。它会区分有意义的零值与缺失数据,保留源文件,并倾向于标记可疑记录,而非未经批准就将其删除。
应用场景
在报告、建模或运营使用前清理原始 Excel 工作簿或 CSV。
删除完全重复的记录,或使用一个或多个业务键列(例如订单 ID)进行去重。
分析行数、列类型、缺失值比例、唯一值和疑似异常值。
使用均值、中位数或零填充数值缺失值,或保持不变。
使用可配置标签(例如
Unknown
)填充缺失文本值。
使用 IQR 或 z-score 方法检测异常值,并根据获批策略标记、截尾或删除。
生成分组汇总、排名、环比比较、同比比较和构成比例。
将清理后的数据转化为业务结论、异常说明和可执行的后续建议。
工作原理
接收 XLSX、XLS 或 CSV 输入,并确定所需的清理或分析目标。
在更改任何数据之前运行仅检查模式。检查数据维度、数据类型、缺失情况、重复行、唯一值、样本值和疑似异常值范围。
与用户确认清理策略,包括缺失值处理、去重键、异常值处理、日期转换预期,以及总和还是去重计数等统计定义。
根据需要规范化文本值,包括处理首尾空格以及可能影响分组或去重的全角与半角不一致问题。
使用获批选项执行确定性清理脚本。生成新输出文件,而不是覆盖原文件。
在清理报告中记录每项操作,包括受影响的行或列、所选策略、填充值数量、删除的记录以及异常值标记。
通过将行数、填充总数、重复项数量和异常值标记数量与报告进行核对,验证结果。
使用分组聚合、排名、趋势比较和相关业务指标分析清理后的数据集。
提供清理后的文件、Markdown 报告、统计发现、需要核实的异常,以及以业务语言撰写的建议。
配置指南
安装清理脚本所需的 Python 依赖项:
pip install pandas openpyxl
对于访问 pypi.org 较慢的网络,可选用镜像:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas openpyxl
该工作流已使用 pandas 3.0.6 和 openpyxl 3.1.5 测试,并支持 CSV 和 XLSX 的读写路径。它还兼容 pandas 2.x(object)与 pandas 3.x(str)之间的文本列 dtype 差异。
运行检查但不写入文件:
python scripts/clean_excel.py input.xlsx
执行完整清理:去重、使用中位数填充数值缺失值,并标记 IQR 异常值:
python scripts/clean_excel.py input.xlsx
--sheet Sheet1
--out cleaned_result.xlsx
--dedupe --subset order_id
--numeric-fill median
--outlier iqr --outlier-action flag
--report cleaning_report.md
每次运行都使用新的输出路径,以便保留原始工作簿用于比较和审计。
数据架构
输入格式
支持的文件:.xlsx、.xls 和 .csv。
使用 --sheet 选择工作簿工作表;默认使用第一个工作表。
源文件视为不可变文件,绝不会被覆盖。
清理控件
参数 用途
--sheet 选择工作表;默认为第一个工作表。
--out 设置清理后输出文件的路径。
--dedupe 删除完全重复的行。
--subset 定义用作重复项键的逗号分隔列。
--numeric-fill 支持 mean、median、zero 或 none。
--text-fill 设置缺失文本的替代值,默认为 Unknown。
--drop-row-na-threshold 删除缺失比例超过指定阈值(例如 0.5)的行。
--drop-col-na-threshold 删除缺失比例超过指定阈值的列。
--outlier 选择 iqr、zscore 或 none;默认使用 IQR。
--outlier-action 使用 flag、clip 或 drop;建议使用标记方式。
--report 设置 Markdown 清理报告的路径。
生成的文件
清理后的电子表格或 CSV,包含转换后的数据集及诸如 _outlier_column_name 的异常值标记列。
Markdown 清理报告,包含数据概况、清理日志、统计分析、结论和建议。
可选的异常值标记,用于保留可疑记录供用户检查,而非悄悄删除。
报告分类
数据检查:维度、列名、类型、缺失率、唯一值数量、示例、重复项数量和疑似异常值范围。
清理日志:操作、受影响的字段或行、所选策略、数量及处理后的行总数。
统计分析:分组维度、指标、最高与最低排名、环比或同比变化,以及构成占比。
结论:业务含义、需要验证的异常,以及建议采取的后续行动。
高级特性
基于脚本的确定性转换,确保清理过程可复现。
仅检查模式,可在写入任何文件前先审查数据。
灵活处理数值和文本列缺失值的策略,包括基于阈值删除行和列。
多种去重策略,从整行去重到使用
--subset
按业务键去重。
使用 IQR 和 z-score 检测异常值,并可配置标记、截尾或删除操作。
建议采用非破坏性异常处理方式,通过专用异常值标记列保留记录。
明确日期转换预期,并显示转换失败项,而不是悄悄生成
NaT
。
兼容 pandas 2.x 和 pandas 3.x 文本 dtype 的处理方式。
可审计的 Markdown 报告,将每项转换与受影响的行、列和数量关联起来。
具备业务意识的分析,可区分总和与去重用户数或去重访问次数等聚合语义。
验证清单涵盖策略审批、报告核对、源文件保留、异常处理和结论质量。
name: excel-data-cleaner description: "This skill should be used when the user provides a raw spreadsheet or CSV and needs data cleaning and statistics. Trigger phrases include '数据清洗', '去重补空', '异常值处理', 'Excel 清洗', '透视统计', '这份表帮我整理分析一下'. It profiles the data, applies deterministic cleaning via script (deduplication, missing value handling, outlier detection), and produces a cleaned file plus a statistics report with conclusions." agent_created: true
Excel 数据清洗与统计
Overview
输入原始数据表,完成「体检 → 清洗 → 统计 → 结论」一条龙。清洗交给脚本做(确定性、可复现),解读与结论由模型做。核心原则:清洗前先看体检报告再决定策略,不做无声的数据改写。
When to use
用户给了一份 xlsx / xls / csv,要清洗、去重、补空、查异常值。
用户要分组汇总、透视统计、趋势对比并要结论。
依赖
脚本需要 pandas 与 openpyxl:
pip install pandas openpyxl
# 国内网络建议走镜像,pypi.org 可能极慢:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas openpyxl
兼容性:已在 pandas 3.0.6 / openpyxl 3.1.5 实测通过(CSV 与 xlsx 两条读写路径)。脚本内部对文本列的判断同时兼容 pandas 2.x 的 object dtype 与 pandas 3.x 的 str dtype。
Workflow
先体检(不要直接清洗):运行脚本的概览模式,看清楚行数、列类型、缺失率、重复行、异常值分布。
向用户确认清洗策略:缺失怎么处理(删除 / 填充中位数 / 填充「未知」)、哪些列算重复的关键组合、异常值是剔除还是标记。用户没意见时按推荐默认走,并在报告里写清做了什么。
执行清洗:跑脚本生成清洗后文件 + 清洗报告。
复核报告:确认删除行数、填充数量、异常标记数是否合理。
统计分析:基于清洗后数据做分组聚合、对比、趋势。
输出结论:不止给数字,要说清「说明什么 / 有什么异常 / 建议怎么做」。
脚本用法
# 仅体检,不写文件
python scripts/clean_excel.py 原始数据.xlsx
# 完整清洗:去重 + 数值列中位数填充 + IQR 异常值标记
python scripts/clean_excel.py 原始数据.xlsx \
--sheet Sheet1
--out 清洗结果.xlsx
--dedupe --subset 订单号
--numeric-fill median
--outlier iqr --outlier-action flag
--report 清洗报告.md
常用参数:
参数 说明 --sheet 工作表名称,默认第一个 --out 清洗结果输出路径 --dedupe 删除完全重复行 --subset 判重依据列,逗号分隔(如订单号) --numeric-fill mean / median / zero / none --text-fill 文本缺失填充值,默认「未知」 --drop-row-na-threshold 缺失率高于该比例的行直接删除,如 0.5 --drop-col-na-threshold 缺失率高于该比例的列直接删除 --outlier iqr / zscore / none,默认 iqr --outlier-action flag(加一列标记,推荐)/ clip(盖帽)/ drop --report 清洗报告 Markdown 输出路径 输出模式
数据体检
- 规模:N 行 × M 列
- 列概览:列名 / 类型 / 缺失率 / 唯一值数 / 示例值
- 完全重复行:X 行
- 疑似异常值:列名 + 数量 + 取值范围
清洗记录
- 删除完全重复行 X 行(剩 Y 行)
- 「金额」缺失 12 处 → 中位数填充(值=…)
- 「城市」缺失 3 处 → 填充「未知」
- 「订单金额」标记异常值 5 条(箱线图法,超出 [Q1-1.5IQR, Q3+1.5IQR])
统计分析
- 分组汇总表(维度 + 指标)
- 排名 TOP / BOTTOM
- 环比 / 同比 / 构成占比
结论与建议
- 数据说明什么(用业务语言)
- 异常点与需要核实的地方
- 下一步建议
关键规则
绝不静默改数据:每一条清洗动作都要进「清洗记录」,说明处理了哪些行/列、策略是什么。
优先标记而非删除:异常值默认打标记列(如 _outlier_列名),让用户自己决定是否剔除。
保留原始文件:永远输出为新文件,不覆盖输入。
区分「缺失」与「零」:金额 0 是有意义的业务数据,不要当成缺失填充。
文本列先去空格:首尾空格、全角半角不一致会导致去重和分组失败,先规整。
看懂业务含义再统计:求和 vs 去重计数(如 UV vs PV)要问清楚,不要默认 SUM。
日期列要显式转换:转不成功的行要提示,而不是静默变成 NaT。
自检清单
清洗前已出体检报告并与用户确认策略
所有清洗动作记录在案且数量对得上
未覆盖原始文件
异常值是标记而非静默删除
统计口径(求和/去重)已明确
结论用业务语言写成句子,不是只丢一张表
健身计划生成器