ClawSkills logoClawSkills

Sheetsmith

由 Pandas 驱动的 CSV 和 Excel 管理,可快速预览、汇总、过滤、转换和格式转换。每当您需要检

介绍

# Sheetsmith

## 概述 Sheetsmith 是一个轻量级的 pandas 封装工具,专注于处理 CSV/Excel 文件:在一个地方完成预览、描述、筛选、转换和转换。CLI 位于 `skills/sheetsmith/scripts/sheetsmith.py`,它会自动加载任何 CSV/TSV/Excel 文件,报告结构元数据,运行 pandas 表达式,并将结果安全地写回。

## 快速开始 1. 将电子表格(CSV、TSV 或 XLS/XLSX)放入工作区内,或通过完整路径引用它。 2. 运行 `python3 skills/sheetsmith/scripts/sheetsmith.py <command> <path>`,具体命令如下所述。 3. 修改数据时,请提供 `--output new-file` 以保存副本,或者传递 `--inplace` 以覆盖源文件。 4. 查看 `references/usage.md` 以获取更多示例命令和提示。

## 命令 ### summary 打印行/列计数、dtype 分解、包含缺失数据的列以及首/尾预览。使用 `--rows` 控制摘要后显示的行数,使用 `--tail` 预览尾部而不是头部。

### describe 运行 `pandas.DataFrame.describe(include='all')`(可通过 `--include` 自定义),以便立即查看数值统计、基数和频率信息。提供 `--percentiles` 以添加额外的百分位线。

### preview 快速以表格形式查看前 `--rows` 行或后 `--tail` 行,以便在执行操作之前对列顺序或格式进行合理性检查。

### filter 通过 `--query` 输入 pandas 查询字符串(例如 `state == 'CA' and population > 1e6`)。该命令可以打印筛选后的行,或者在您同时传递 `--output` 时,将筛选后的表写入新的 CSV/TSV/XLSX 文件。添加 `--sample` 以检查随机子集而不是整个结果。

### transform 组合新列、重命名或删除现有列,并立即检查结果表。提供一个或多个 `--expr` 表达式,例如 `total = quantity * price`。使用 `--rename old:new` 和 `--drop column` 来重塑表,并通过 `--output` 或 `--inplace` 保留更改。预览版本(不写入)复用与其他命令相同的 `--rows`/`--tail` 标志。

### convert 在支持的格式(CSV/TSV/Excel)之间转换。始终使用所需的扩展名指定 `--output`,该辅助工具将检测正确的写入器(Excel 使用 `openpyxl`,CSV 默认保留逗号分隔符,TSV 使用制表符)。这是在运行其他命令之前标准化数据的最简单方法。

## 工作流规则 - 始终保留原始文件的副本或写入新路径;只有在您明确要求 `--inplace` 时,脚本才会覆盖原始文件。 - 对探索(`summary`、`preview`、`describe`)和编辑(`filter`、`transform`)使用相同的 CLI。`--output` 标志适用于 filter/transform,因此您可以轻松地对结果进行分支。 - 在幕后,该脚本依赖于 pandas + `tabulate` 进行 Markdown 预览,并支持 Excel/CSV/TSV,因此请确保存在这些依赖项(pandas、openpyxl、xlrd、tabulate 在此系统上通过 apt 安装)。 - 当上述基本命令描述不够时,请使用 `references/usage.md` 查看扩展示例(多步骤清洗、数据集比较、表达式提示)。

## 参考资料 - **使用指南:** `references/usage.md`(包含现成可复制的命令、表达式模式和数据集清理配方)。

## 资源

- **GitHub:** https://github.com/CrimsonDevil333333/sheetsmith - **ClawHub:** https://www.clawhub.ai/skills/sheetsmith

更多产品