Install
openclaw skills install @thcjp/csv-analyzer-freeopenclaw skills install @thcjp/csv-analyzer-free功能说明: 本技能涵盖 中文交互、化工作流场景 等核心能力。
用简单命令分析CSV文件,即时获取统计与筛选结果——无需pandas或重型依赖。
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
本Skill无需额外API Key(LLM能力由Agent平台内置提供)
python3 {baseDir}/scripts/csv_analyze.py stats data.csv
返回行数、列类型、数值列的min/max/mean、文本列的unique计数。
快速统计(stats) 选项
**输入**: 用户提供核心能力(免费版)所需的参数和指令。
**输出**: 返回基础筛选(filter)的执行结果,包含操作状态和输出数据。
### 为何不用pandas?
pandas很强大,但仅导入就占100MB+内存,对快速分析任务过于重型。本技能仅用Python标准库,在2GB内存服务器上运行无压力。
**输入**: 用户提供为何不用pandas?所需的参数和指令。
### 付费版专享能力
> 升级付费版解锁以下高级能力:
- **Top/Bottom N**:`top`/`bottom` 命令按指定列取前N/后N行(如 `--column revenue --n 10`)。
- **异常检测**:`anomalies` 命令基于z-score检测超出2σ的值。
- **分组聚合**:`group` 命令按指定列分组,支持 `sum`/`count` 等多种聚合函数,可同时指定多个
**输入**: 用户提供付费版专享能力所需的参数和指令。
**输出**: 返回付费版专享能力的执行结果,包含操作状态和输出数据。
#
## 核心能力(免费版)
### 1. 快速统计(stats)
```bash
result = "ready"
py filter data.csv --where "amount>1000" --output big_orders.csv
支持比较运算符(>、<、>=、<=、==、!=),可将筛选结果导出为CSV。
自动识别列类型:数值(numeric)、日期(date)、文本(text)。数值列做统计计算,文本列做unique计数。
python3 可用(无需安装任何外部包)。stats 命令获取数据概况(行数、列类型、min/max/mean)。filter 命令按条件筛选行,支持比较运算符。--output 参数将筛选结果导出为CSV。# 输出:
# 行数: 1500
# 列: order_id(text, 1500 unique), amount(numeric, min=10.5, max=9999.0, mean=456.78),
# category(text, 12 unique), order_date(date)
result = "ready"
py filter orders.csv
# 输出:筛选出87行,已导出到 big_orders.csv
result = "ready"
py filter orders.csv --where "category==electronics"
# 输出:筛选出category为electronics的行
升级付费版解锁以下高级能力:
group 命令按指定列分组,支持 sum/count 等多种聚合函数,可同时指定多个。--agg "sum:amount" "count:id" 一次指定多个聚合。--where 支持 AND/OR 组合条件(免费版仅支持单条件)。| 错误场景 | 原因 | 处理方式 |
|---|---|---|
FileNotFoundError | 文件路径错误或不存在 | 校验文件路径与扩展名(.csv) |
python3: command not found | 系统未安装Python 3 | 安装Python 3.x并确保 python3 在PATH中 |
--column 列名不存在 | 列名拼写错误或大小写不匹配 | 先用 stats 查看实际列名,再传入 |
--where 表达式无效 | 比较运算符或列名错误 | 使用合法运算符(>/</>=/<=/==/!=)与正确列名 |
| 数值列含非数值 | 数据中有空值或字符串 | 清洗数据或确认列类型识别正确 |
| 日期解析失败 | 非ISO格式 | 优先使用ISO 8601(2024-01-15),其他格式可能无法识别 |
| 文件过大导致内存不足 | 超过约100MB | 改用pandas流式处理,或拆分文件 |
--output 路径不可写 | 目录权限不足 | 检查目标目录权限或更换输出路径 |
| 调用付费版专享命令 | 免费版仅支持stats/filter | 升级付费版解锁top/bottom/anomalies/group命令 |
免费版支持 stats(快速统计)与 filter(基础筛选)两个命令。top/bottom/anomalies/group 为付费版专享。
pandas仅导入就占100MB+内存,对快速分析任务过于重型。本技能仅用Python标准库(csv模块),在2GB内存服务器上运行无压力。
设计支持约100MB以内的文件(载入内存)。超过此规模建议安装pandas或使用流式处理。
filter 的 --where 支持 >、<、>=、<=、==、!= 六种比较运算符。多条件组合(AND/OR)为付费版专享。
免费版不提供异常检测。付费版提供 anomalies 命令,基于z-score检测超出2σ的值。
免费版不提供分组聚合。付费版提供 group 命令,支持 sum/count 等聚合函数。
参考 csv-analyzer 付费版SKILL.md,解锁Top/Bottom N、异常检测、分组聚合、多条件组合等能力。
stats 与 filter 命令,不支持 top/bottom/anomalies/group(付费版专享)。--where 仅支持单条件,不支持 AND/OR 组合(付费版专享)。| 风险类型 | 防范措施 |
|---|---|
| API密钥泄露 | 通过环境变量配置,禁止硬编码到代码或配置文件中 |
| 命令执行风险 | 仅执行白名单命令,避免拼接用户输入到命令行参数中 |
| 敏感数据暴露 | 输出结果中不包含密钥、令牌等敏感信息 |
使用前请确认已阅读依赖说明章节,确保运行环境满足安全要求。
| 操作场景 | 手动耗时 | 自动化耗时 | 效率提升 |
|---|---|---|---|
| 文件解析与提取 | 5-10分钟/个 | <5秒/个 | 60-120x |
| 批量文件处理(100个) | 8-16小时 | <5分钟 | 96-192x |
| API调用与响应解析 | 2-3分钟/次 | <1秒/次 | 120-180x |
| 多接口数据聚合 | 15-30分钟 | <10秒 | 90-180x |
| 命令执行与结果收集 | 3-5分钟/次 | <2秒/次 | 90-150x |
| 重复任务批量执行 | 因任务而异 | 线性缩减 | 5-50x |
| 错误排查与修复 | 10-30分钟 | <30秒 | 20-60x |
| 对比维度 | 本技能 | 传统手动方式 | 通用脚本工具 |
|---|---|---|---|
| 自动化程度 | 全流程自动 | 完全手动 | 部分自动 |
| 错误处理 | 内置错误恢复 | 依赖人工经验 | 基本try-catch |
| 可复用性 | 参数化配置 | 一次性脚本 | 模板化 |
| 安全合规 | 内置安全检查 | 无安全保障 | 无安全保障 |
| 适用场景 | 核心功能 | 通用场景 | 通用场景 |