
当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 获得的收益就已是巨大的。"
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 让这件事变得毫不费力。
回归表让你接受,可视化让你质疑。
03 从临时RA到永久项目记忆
Spina 分享了他用 Claude Code 重建一个遗留项目的故事。
一个几年前的项目,积累了数十个脚本。文件名混杂着各种 _v2、_final、_v3_FINAL 的后缀——每个实证研究者都懂这种痛。
Claude Code 做了什么?
1. 考古——几秒钟内读完了所有脚本,区分了核心文件和历史遗留文件 2. 重构——重新标注、嵌入注释、改进代码组织 3. 翻译——把一位合作者的 Matlab 代码翻译成了 R 4. 流水线更新——新数据到达后,自动重跑所有流程、更新图表、同步 Overleaf 5. 制度记忆——Claude 记住了数据是如何清理的、变量是如何定义的、回归是怎么跑的
他说道:
"最有价值的,不是 Claude 写代码更快。而是有一个东西读完了你的整个项目,然后问你:‘为什么你在企业层面聚类标准误?'"
这句话击中了很多人的痛点。
有了 CLAUDE.md 文件,每次开启新会话时,Claude 自动读取项目概况、关键决策、已知问题和当前状态。你的项目记忆——那些你几个月后一定会忘记的东西——不再随着会话关闭而消失。
不只是效率:AI Agent如何改变研究流程
Spina 在演讲中引用了 Pedro Sant'Anna 的五阶段生产工作流,展示了从"反复迭代协作"到"自主执行+质量门控"的转变:
1. 规划——用 MUST/SHOULD/MAY 明确需求优先级 2. 执行——Claude 自主在"承包商模式"下工作 3. 验证——逐文件质量评分(0-100分) 4. 审查——10个专业 Agent 并行审查 5. 修复——Critic/Fixer 循环直到通过质量门
每个文件按分数分级:95分以上卓越、90分可发表、80分可提交。
这套流程的核心,是从你手把手引导每一步,变为在护栏内自主执行,你只负责验证。
演讲者自己的实践成果也颇具说服力:
• ✓ 用 Claude Code 从零制作了这场演讲的幻灯片 • ✓ 将 Claude 整合到多个项目——2篇手稿达到会议标准 • ✓ 重建了整个学期的教学幻灯片 • ✓ 完成了一份 grant 报告
如何开始?三阶落地指南
第一阶:学徒(30分钟就能上路)
做的事很简单:
1. 在你的项目文件夹里建一个 CLAUDE.md文件 —— 写下项目概况、方法决策、已知问题、当前状态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. 限定范围——只在项目文件夹内打开 Claude,绝不在 home 目录运行 2. 写下来——用 CLAUDE.md 写明能做什么、不能做什么 3. 始终用 Plan 模式——先看它想做什么,再批准执行 4. 隔离个人文件——使用单独的 Dropbox 账户 5. 全局设置——在 ~/.claude/settings.json中配置 allow/deny 路径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
夜雨聆风