7  数据处理实践

使用 Claude Code 进行数据处理或更复杂的任务时,推荐采用”先计划、后执行”的工作模式。这样可以避免 AI 在模糊指令下浪费大量时间探索数据结构,也能让你在执行前审阅和调整方案。

7.1 整体流程

数据处理的标准流程分为三个阶段:

Step 1:在 CLAUDE.md 中明确项目约定
    ↓
Step 2:打开 plan mode,说明任务需求
    ↓
Step 3:确认计划,开始执行

7.2 Step 1:在 CLAUDE.md 中明确项目约定

在开始数据处理之前,先在 CLAUDE.md 中写明你的工作习惯和希望 AI 工作的方式。这一步非常重要,它决定了 AI 后续所有操作的基本规范。

以下是一个适合数据处理项目的 CLAUDE.md 示例:

## Stata 数据处理规范

- 通过 Stata-mcp 调用 Stata,不要用命令行。
- 原始数据在 `data/raw/` 目录下,不要修改或覆盖
- 清洗过程中以及清洗后的数据存入 `data/processed/`
- 代码放在 `code/`
- 说明文档放在 `file/`
- Stata MCP 运行在 Windows 端,必须使用 Windows 路径格式(`C:/Users/...`),
  不能用 WSL 的 `/mnt/c/...` 格式,否则报 `r(601) file not found`
Tip持续完善 CLAUDE.md

可以在 AI 执行完任务后,问它刚刚有没有遇到问题或报错。然后让它总结经验,写进 CLAUDE.md 里面。随着使用,CLAUDE.md 会不断完善,AI 的工作效率和准确度也会逐步提升。

7.3 Step 2:打开 plan mode,说明任务需求

在 Claude Code 中使用 plan mode 输入任务需求。好的 prompt 应该包含:

  • 用什么工具(Stata、Python 等)
  • 有哪些步骤(清洗、合并、计算等)
  • 最后要输出什么(.do 文件、.dta 数据、.md 文档)
  • 自己对需求不确定的地方也可以写明,让 AI 帮你完善

7.3.1 示例 prompt

【data/】里面是实证金融研究用的 A 股上市公司数据,需要清洗合并后计算常用控制变量(Size、Age、Lev、Growth、ROA),对这些指标进行描述性统计。用 stata 完成。

注意事项:删除金融行业(行业代码J*)、计算出的指标要缩尾

- 我不确定具体要执行哪些数据清洗操作,需要你结合数据结构和数据处理的惯例判断

最后输出三个文件:处理数据的.do文档;处理后数据集.dta文件;数据处理工作小结.md文档(包含数据处理操作和最后的描述性统计结果)
Note关于不确定性的表达

一些常规的数据处理操作(例如缩尾),即使不写,AI 有时候也会自己判断出需要执行,但结果不稳定。建议在 prompt 中尽量明确你的需求,至少列出关键注意事项。

7.3.2 AI 的工作过程

收到 prompt 后,AI 通常会:

  1. 探索数据结构 — 读取数据的说明文件(如 CSMAR 的 .txt 文档),导入少量样本行确认
  2. 识别关键信息 — 变量名、数据类型、频率、标识符格式等
  3. 生成计划书 — 包含每一步的具体操作,具体到 Stata 命令级别

例如,AI 可能识别出需要统一的变量名:

  • SymbolStkcd(股票代码在不同数据集中的名称不同)
  • EndDateAccper(报告期的变量名不同)
  • 金额以字符串存储(如 "19802000000.00"),需要转为数值

7.4 Step 3:确认计划并执行

修改计划书有两种方式: 1. 小幅修改,直接在对话的选项 “No” 后面输入要修改的的内容 2. 大幅修改,在对话的选项 “No” 后面让 AI 把计划书保存为 .md 文档,然后再修改这份文档。

确认计划书后,可以逐步执行或一次执行:

7.4.1 逐步执行

按照计划书,先生成第一部分(预处理)的 .do 文件并运行。

适合:对计划不太确定,想逐步检查。

7.4.2 一次执行

按照计划书全部执行,每步运行完检查 .log 确认无错误后再继续下一步。

适合:对计划比较有信心,想提高效率。

7.5 常见陷阱

Caution避免模糊指令

直接在 plan mode 输入模糊的指令(如”对数据做一些清洗”),AI 可能需要花很长时间探索数据结构。例如,一次模糊指令导致 AI 的 Explore 阶段运行了 21 分钟。而如果向 AI 说明,“不要扫描全部数据,迅速探索数据结构”,或者,“用 Stata 探索数据结构,不要用终端命令” 也能节省时间。

下一章将通过一个完整的实战案例,演示这个工作流的具体应用。