乐于分享
好东西不私藏

当AI Agent走进经济学研究:Claude Code能给实证学者带来什么?

当AI Agent走进经济学研究:Claude Code能给实证学者带来什么?

当AI Agent走进经济学研究:Claude Code能给实证学者带来什么?


前段时间,和一位做实证的朋友聊天。

他正在赶一篇因果推断的论文,数据已经跑过三轮,但光是清理遗留代码、重跑稳健性检验、调整表格格式、更新参考文献,就花了他整整两周。

"最让我崩溃的是,"他说,"这些工作做完之后,我发现自己已经没力气认真思考识别策略了。"

我听后沉默了。因为这是每一个实证研究者的日常——不是不会写代码,而是没有时间。

你真正想做的,是把数据背后的经济机制想清楚,是把识别策略打磨到经得起审稿人拷问。但现实是,你的精力被数据清理、脚本调试、表格格式化、参考文献管理这些"学术体力活"一点点吞噬。

直到我读到了 Alessandro Spina 的一场演讲。

这位 UTS Finance 的研究者,在 2026 年 3 月做了一次题为 Claude Code for Academics: An AI Agent for Empirical Research 的报告。他在开场时说了一句话,让我久久无法平静:

"对大多数人来说,瓶颈从来不是‘我不会用 R 写循环',而是‘我没有时间清理数据、格式化表格、写审稿意见,同时还能认真思考识别策略'。AI 的作用,就是把瓶颈推回它应该在的地方——深度思考经济学问题。"


什么是Claude Code?

简单来说,Claude Code 是 Anthropic 公司开发的一个 AI agent,它住在你的终端里,可以直接操作你的项目文件。

它不是你在浏览器里聊天的 ChatGPT,也不是 IDE 里帮你自动补全代码的 Copilot。Claude Code 能做四件关键的事:

  • • 读取和编辑文件——你的数据、脚本、LaTeX 文档,它都能读
  • • 执行代码——在终端里直接运行 R、Stata、Python
  • • 记住上下文——通过 CLAUDE.md 文件在会话间保持记忆
  • • 生成表格和图表——输出到本地或 GitHub

换言之,它不是一个聊天工具,而是一个能读文件、能跑代码、能记住上下文的项目级协作者

两个核心概念

第一,"锯齿形前沿"(Jagged Frontier)。

AI 的能力不是一条平滑的上升曲线。在某些领域,它已经远超人类——比如文献综述、代码编写、数据格式化、跨语言翻译。但在另一些领域,它仍然弱得可怜——比如因果推断、新颖想法、细致的理论判断。

这意味着:AI 怀疑论者和 AI 狂热者可能都是对的。 关键在于知道哪里该用它,哪里不该。

第二,三层进阶框架。

Spina 将 Claude Code 的使用路径分为三个层级:

层级
名称
核心能力
Tier 1
学徒
CLAUDE.md + 基本命令
Tier 2
门徒
Skills + Commands + Rules
Tier 3
大师
Agents + Personas + 跨项目管理

有趣的是,他说:"大多数学者从 Tier 1 获得的收益就已是巨大的。"


01 代码验证:"坎宁安猜想"与跨语言复现

2026年初,计量经济学家 Scott Cunningham 在他的 Substack 上提出了一个引人深思的想法。

他称之为"坎宁安猜想":

AI 的幻觉(hallucination)类似于测量误差。当你用不同语言写代码时,这些误差在不同语言之间是正交的。

这是什么意思?

假如你用 Claude 写了一段 R 代码来做双重差分估计,代码存在一个不易察觉的 bug。那么当你让 Claude 用 Stata 复现同样的分析时,它犯的错误大概率是不一样的——甚至可能没有错误。如果两段代码输出了完全相同的结果,你就有很高的置信度认为代码是正确的。

Cunningham 的报告显示,在他的测试中,R 和 Stata 版本的 ATT 估计值匹配到了小数点后六位:ATT = -0.731842

当两份独立生成的代码输出一致时,你获得的不只是一个结果,而是一份内置的同行评审。

这就是跨语言验证的力量。单一语言的代码审查可能遗漏微妙错误,但 AI 在不同语言中"犯错的模式不同"——这个特性本身成为了一种验证机制。

当然,如果结果不一致呢?那更好——因为你已经发现了一个需要认真检查的 bug。


02 可视化的力量:当制图成本为零

Spina 在演讲中提到了另一件事。

他在做一个大规模数据集的事件研究时,随手让 Claude 把关键变量的时间趋势画出来。结果图里出现了一些异常的跳跃

他说:"如果只看回归表,你可能永远不会注意到这个问题——'ATT = -0.73' 这个数字太容易被不假思索地接受了。但一个可视化,会让错误变得可见。"

他让 Claude 深入挖掘原始数据,找到了异常的原因,并提出了修复方案。

这件事的真正启示是:当制图的边际成本趋近于零时,你会开始做那些你本来绝不会费劲去做的事。

传统工作流
Claude Code 工作流
"画图太麻烦,看回归表就行"
"帮我画个图"——几秒钟
只在论文里放必要图表
在每一步都可视化验证
图是"最终交付物"
图是"理解工具"

我们都被教过:总是先画图。 Claude 让这件事变得毫不费力。

回归表让你接受,可视化让你质疑。


03 从临时RA到永久项目记忆

Spina 分享了他用 Claude Code 重建一个遗留项目的故事。

一个几年前的项目,积累了数十个脚本。文件名混杂着各种 _v2_final_v3_FINAL 的后缀——每个实证研究者都懂这种痛。

Claude Code 做了什么?

  1. 1. 考古——几秒钟内读完了所有脚本,区分了核心文件和历史遗留文件
  2. 2. 重构——重新标注、嵌入注释、改进代码组织
  3. 3. 翻译——把一位合作者的 Matlab 代码翻译成了 R
  4. 4. 流水线更新——新数据到达后,自动重跑所有流程、更新图表、同步 Overleaf
  5. 5. 制度记忆——Claude 记住了数据是如何清理的、变量是如何定义的、回归是怎么跑的

他说道:

"最有价值的,不是 Claude 写代码更快。而是有一个东西读完了你的整个项目,然后问你:‘为什么你在企业层面聚类标准误?'"

这句话击中了很多人的痛点。

有了 CLAUDE.md 文件,每次开启新会话时,Claude 自动读取项目概况、关键决策、已知问题和当前状态。你的项目记忆——那些你几个月后一定会忘记的东西——不再随着会话关闭而消失。


不只是效率:AI Agent如何改变研究流程

Spina 在演讲中引用了 Pedro Sant'Anna 的五阶段生产工作流,展示了从"反复迭代协作"到"自主执行+质量门控"的转变:

  1. 1. 规划——用 MUST/SHOULD/MAY 明确需求优先级
  2. 2. 执行——Claude 自主在"承包商模式"下工作
  3. 3. 验证——逐文件质量评分(0-100分)
  4. 4. 审查——10个专业 Agent 并行审查
  5. 5. 修复——Critic/Fixer 循环直到通过质量门

每个文件按分数分级:95分以上卓越、90分可发表、80分可提交。

这套流程的核心,是从你手把手引导每一步,变为在护栏内自主执行,你只负责验证

演讲者自己的实践成果也颇具说服力:

  • • ✓ 用 Claude Code 从零制作了这场演讲的幻灯片
  • • ✓ 将 Claude 整合到多个项目——2篇手稿达到会议标准
  • • ✓ 重建了整个学期的教学幻灯片
  • • ✓ 完成了一份 grant 报告

如何开始?三阶落地指南

第一阶:学徒(30分钟就能上路)

做的事很简单:

  1. 1. 在你的项目文件夹里建一个 CLAUDE.md 文件 —— 写下项目概况、方法决策、已知问题、当前状态
  2. 2. 学会用两个命令:
    • • /logsession —— 在会话结束时记录进度日志
    • • /newscript —— 用统一模板创建新脚本

Spina 反复强调:"大多数学者在这里停下的收益就已经巨大。CLAUDE.md 加上两个命令,就足以带来质变。"

第二阶:门徒(遇到重复劳动时再升级)

当你发现自己不断重复同样的指令时,逐步添加:

  • • Skills(技能):预写的工作流——比如"回归表格式""LaTeX 编译规范"
  • • Commands(命令):可复用的精确指令——/reviewcode/checkrobustness
  • • Rules(规则):路径限定的护栏——.claude/rules/r-style.md 只在操作 .R 文件时加载

第三阶:大师(进阶玩家)

当你需要更高程度的自动化时:

  • • Agents(子代理):让 Claude 生成独立的子实例并发工作
  • • Personas(角色):定义特定角色——比如"审稿人#2"(怀疑论者)、"编辑"(语法与结构审查)
  • • Agent Teams:多专业 Agent 并行工作,由协调者合并结果

安全守则

Cunningham 有一个精妙的比喻:"Claude 大致相当于一只训练有素的拉布拉多。它会冲在前面,挣脱绳子,虽然会回来,但在这个过程中可能惹麻烦。"

保护自己的六条原则:

  1. 1. 限定范围——只在项目文件夹内打开 Claude,绝不在 home 目录运行
  2. 2. 写下来——用 CLAUDE.md 写明能做什么、不能做什么
  3. 3. 始终用 Plan 模式——先看它想做什么,再批准执行
  4. 4. 隔离个人文件——使用单独的 Dropbox 账户
  5. 5. 全局设置——在 ~/.claude/settings.json 中配置 allow/deny 路径
  6. 6. 备份——用 Git 做版本控制

另外,数据隐私是一个不能回避的问题。当 Claude 读取你的数据文件时,文件内容会被发送到 Anthropic 的 API。所以:

  • • 用 Claude 写代码,但不要让 Claude 读取原始数据
  • • 用合成数据或匿名数据进行原型测试
  • • 最终流水线在本地运行

最后的思考

Spina 在演讲结束时谈到了一个更大的图景。

"输出爆炸"正在发生——当每个研究者都有一个 24/7 的 AI 协作者时,论文产量会如何变化?期刊如何应对?审稿流程会变成什么样?年轻研究者会受到怎样的冲击?

这些问题没有答案。

但他的核心建议却异常朴素:

从小处开始。选一个项目(确保有备份),建一个 CLAUDE.md。

对于每一个还在犹豫的实证研究者,Spina 引用了 Cunningham 的一句话:

"没有人会在墓志铭上写‘他亲自写了自己的 LaTeX 代码。'"

把技术性的、重复的、消耗精力的事情外包出去。然后把省下来的时间,用来思考那些真正重要的问题。

因为你选择做学术,从来不是为了写代码。


本文基于 Alessandro Spina 的演讲「Claude Code for Academics: An AI Agent for Empirical Research」(UTS Finance Department, March 2026)整理。

相关资源:

  • • 工具与代码:github.com/aspi6246/ClaudeCodeTools
  • • Cunningham 系列博客:causalinf.substack.com
  • • Sant'Anna 工作流:github.com/pedrohcgs/claude-code-my-workflow
  • • Claude 容器(Goldsmith-Pinkham):github.com/paulgp/claude-container