brycewang-stanford

did-reviewer

双重差分(DID)实证审查Skill。做DID分析前必须检查平行趋势假设、画图可视化、报告违背情况。触发词:DID审查/双重差分检查/平行趋势/DiD reviewer/difference-in-differences

brycewang-stanford 2,621 355 Updated 1w ago
GitHub

Install

npx skillscat add brycewang-stanford/auto-empirical-research-skills/did-reviewer

Install via the SkillsCat registry.

SKILL.md

did-reviewer — 双重差分 (DID) 实证审查Skill

本 Skill 是 DID(双重差分)实证分析的强制检查清单,在执行 DID 分析前和分析后都必须按本 Skill 检查:平行趋势假设、可视化、违背报告、稳健性。不符合本 Skill 要求的 DID 分析不得发表。

适用场景

  • 做 DID 分析前设计检验方案
  • 审稿人审查 DID 论文时使用
  • 研究者自查 DID 实证结果时使用
  • 评估已发表 DID 论文的质量时使用

核心理念

DID 是识别因果的"近似实验",但前提是平行趋势假设成立。若该假设不成立,则 DID 估计量是有偏的,无论结果多么"显著"。

常见错误:

  • ❌ 只报告处理组和对照组的系数,不检验平行趋势
  • ❌ 平行趋势检验图不加置信区间
  • ❌ 不报告政策提前发生的违背情况(anticipation effects)
  • ❌ 把 DID 当万能钥匙,忽视识别假设

强制检查清单(DID 七步审查)

✅ 第一步:确认研究设计类型

类型 命令 说明
标准 DID(2×2) didYw 或手动回归 处理组vs对照组,一次政策
多时点 DID(Staggered DID) did2/csdid 不同单位政策时间不同
交错 DID(Event Study) eventstudy 事件前后动态效应
连续 DID(Continuous DID) 断点回归变体 政策强度连续变化

✅ 第二步:平行趋势检验(Pre-trend Test)

必须执行

  1. 计算处理组和对照组在政策前期(pre-period)的结果变量均值
  2. 检验政策前期两组的趋势是否平行
  3. 使用 事件研究图(Event Study Plot) 可视化

事件研究图规范

X轴:相对时间(政策前第k期到政策后第k期)
Y轴:处理效应系数
必须包含:置信区间(95%CI)、政策前期系数连线、政策后期系数

判断标准

  • 政策前期(k<0)系数不显著异于0 → 平行趋势成立 ✅
  • 政策前期系数显著异于0 → 平行趋势违背 ❌

✅ 第三步:报告违背情况(Violation Report)

若发现以下违背情况,必须如实报告

违背类型 描述 处理方式
Anticipation Effects 处理组在政策实施前就提前反应 将政策前期效应纳入模型
Spillover Effects 对照组受到处理组溢出效应 排除溢出污染样本
Composition Effects 处理组样本在政策后发生变化 记录并分析样本变化
Parallel Trend Violation 政策前期趋势不平行 改用合成控制法(SCM)

报告格式

## 平行趋势违背报告

**检验方法**:[描述使用的检验方法]
**违背情况**:[是/否存在违背]
- 若存在:描述违背类型、程度、可能影响
- 若不存在:说明检验结果

✅ 第四步:Staggered DID 特殊检验

若使用多时点 DID / 交错处理,额外检查:

Callaway & Sant'Anna (2021) 检验

# 使用 csdid 或 did2 包
csdid(lwage, id, time, gvar, control = "nevertreated")

Borusyak et al. (2024) 检验

# 使用 did 包
did(yname, tname, idname, gname, xformla = ~X)

判断标准

  • 不同处理时间点的效应是否异质
  • 是否存在"好坏"处理时间混淆

✅ 第五步:安慰剂检验(Placebo Test)

必须执行

检验类型 做法 判断标准
时间安慰剂 假设政策提前2-3年 政策前期系数应不显著
随机处理组 随机抽取处理组 显著结果应<5%
替换变量 用同期不相关变量替代因变量 应不显著

✅ 第六步:稳健性检验

至少报告以下稳健性检验:

  • 排除异常值:剔除处理组中政策前后的极端值
  • 不同控制组:替换对照组的定义
  • 不同模型设定:增减控制变量、改变函数形式
  • 样本敏感性:不同样本范围的结果一致性

✅ 第七步:异质性分析(可选但建议)

报告处理效应的异质性:

异质性维度 分组方式
地区 沿海vs内陆
企业规模 大vs小
行业 高技术vs低技术
时间 政策早期vs晚期

输出标准格式

## DID 实证审查报告

**审查对象**:论文标题/研究问题
**使用的识别策略**:标准DID / 交错DID / 连续DID
**数据来源**:[数据库名称,附provenance]

### 审查结果

| 检查项 | 状态 | 说明 |
|--------|------|------|
| 平行趋势检验 | ✅/❌ | 检验方法和结果 |
| 事件研究图 | ✅/❌ | 是否规范 |
| 违背情况报告 | ✅/❌ | 是否如实报告 |
| 交错DID特殊检验 | ✅/❌ | 使用的方法 |
| 安慰剂检验 | ✅/❌ | 结果是否合理 |
| 稳健性检验 | ✅/❌ | 报告了哪些 |
| 异质性分析 | ✅/❌ | 分析内容 |

### 致命缺陷(如有)

[列出可能导致识别策略失效的致命问题]

### 建议修改

[针对性的修改建议]

调用接口

在 Claude Code 对话窗口输入:

/did-reviewer

或完整 Prompt:

按DID审查Skill检查本项目的DID分析:必须包含平行趋势检验、事件研究图、违背情况报告、交错DID特殊检验、安慰剂检验、稳健性检验。输出结构化审查报告。

与其他 Skill 的配合

  • grillme → 选题时确定使用 DID 作为识别策略
  • citation-fidelity → 引用 DID 相关方法论文献时核查准确性
  • econ-reviewer → 完整论文审查时配合使用

重要声明

  • 本 Skill 的审查标准参照**顶刊(AER, Econometrica, QJE, JPE)**要求
  • 平行趋势检验是必要条件,不是可选项
  • 发现违背情况不等于论文无效,但必须如实报告,审稿人会判断是否接受

Categories