Permutation 随机化推断是什么?
Permutation inference 问的是:如果核心变量或处理标签只是随机分配,真实估计量还会这么极端吗。它固定主模型,只改变标签,用随机标签世界构造零假设分布。
先用一句话理解
把置换推断想成反复洗牌。模型、样本和控制变量都不变,只把处理标签打乱;如果真实系数在这些洗牌结果里非常罕见,说明它不太像随机标签造成的。
什么时候用
| 判断项 | 教科书式判断 |
|---|---|
| 适合用在 | 样本较小、常规分布近似可疑,或希望检验处理标签随机性。 |
| 先不要用在 | 主模型本身还没固定,或每次置换都会改变样本定义。 |
| 最关键的前提 | 置换规则要符合研究设计,例如在可交换的单位或聚类内置换。 |
| 读表顺序 | 真实系数、常规 p 值、有效置换次数、经验 p 值。 |
| 论文表述边界 | 经验 p 值来自随机标签世界,不等同于常规模型 p 值。 |
把它和相近方法分清楚
| 容易混淆的对象 | 怎么区分 | 初学者记法 |
|---|---|---|
| 常规 p 值 | 依赖渐近分布或模型假设。 | 样本小或分布怪时可能脆弱。 |
| Bootstrap | 重抽样观测估计标准误或置信区间。 | 不是打乱处理标签。 |
| Permutation | 固定主模型,只随机置换核心标签。 | 检验真实估计量在随机世界里的位置。 |
核心直觉和模型公式
经验 p 值
双侧置换 p 值常写成:
\[p_{perm}=\frac{1+\sum_{b=1}^{B}1(|\hat{\beta}_b^*|\ge |\hat{\beta}|)}{1+B}\]
加 1 是常见的小样本修正,避免经验 p 值被写成绝对零。
公式里的符号怎么读
| 符号 | 含义 | 在本页怎么理解 |
|---|---|---|
| β̂ | 真实估计量 | 原始数据和固定主模型得到的核心系数。 |
| β̂_b* | 第 b 次置换估计量 | 打乱标签后重新估计得到的系数。 |
| B | 置换次数 | 有效随机置换的次数,决定 p 值分辨率。 |
| 1(·) | 指示函数 | 置换估计量是否至少和真实估计量一样极端。 |
| p_perm | 经验 p 值 | 随机标签世界下真实结果有多罕见。 |
专业使用口径
置换推断的专业性在于“固定主模型”和“诚实报告有效置换次数”。
| 口径 | 专业写法 |
|---|---|
| 模型固定 | 因变量、控制变量、固定效应和标准误口径都不应在置换中改变。 |
| 置换对象 | 说明置换的是处理标签、核心解释变量还是聚类层标签。 |
| 有效次数 | 报告成功估计的置换次数,不只报告计划次数。 |
| 经验 p 值 | 同时报告真实常规 p 和 permutation p,二者含义不同。 |
一步一步做:从问题到结果的五步
| 步骤 | 这一页具体做什么 | 做到什么程度才算读懂 |
|---|---|---|
| 1. 固定主模型 | 先确定原始模型和核心变量。 | 不能边置换边调规格。 |
| 2. 设定置换规则 | 选择在个体、时间、聚类或处理标签层面置换。 | 置换层级要符合可交换性。 |
| 3. 反复估计 | 每次打乱标签后重新估计同一个模型。 | 失败的置换要计入有效次数说明。 |
| 4. 构造零分布 | 收集所有置换系数或 t 值。 | 这就是随机标签世界。 |
| 5. 比较真实结果 | 看真实估计量在零分布中的极端程度。 | 经验 p 值不能过度精确化。 |
结果怎么读:先读口径,再读数字
| 读表顺序 | 本页怎么读 | 不要这样读 |
|---|---|---|
| 先看真实模型 | 确认真实系数和常规 p 值。 | 主模型不清楚时,置换结果无意义。 |
| 再看有效置换 | 有效次数决定经验 p 值分辨率。 | 次数太少时不要夸大小数。 |
| 然后看经验 p | 它说明真实结果在随机标签下是否罕见。 | 不要把它和常规 p 值混写。 |
| 最后看置换规则 | 规则是否和研究设计匹配。 | 错误置换会制造虚假的稳健性。 |
初学者最容易错在哪里
| 误读 | 为什么错 |
|---|---|
| 每次置换都改模型 | 错。置换检验必须固定主模型。 |
| 只报告计划置换次数 | 错。要报告有效置换次数。 |
| 把经验 p 当常规 p | 错。两者来自不同世界。 |
| 置换不可交换标签 | 错。置换规则必须符合研究设计。 |
变量要求和案例口径
| 字段 | 口径 |
|---|---|
| 数据 | CSMAR 风格 A 股企业创新面板 |
| 原始样本 | 196 家上市公司,2015-2020 年,约 1200 个公司-年观测;各方法有效样本以本页输出表 N 为准 |
| 因变量 | patent_count;回归页通常使用 ln(1 + patent_count) |
| 核心解释变量 | dfi_index,数字普惠金融指数;部分案例输出展示的是标准化后的 dfi_index |
| 控制变量 | roa、lev、size、growth、cashflow、tobinq、top1、dual、board、indep、soe、age |
| 输出文件 | permutation_inference_results.csv |
| 角色要求 | 因变量、核心解释变量 |
| 依赖包 | 无额外 Stata 社区包要求 |
实际代码
下面是本页案例里的最小 Stata 代码。它的作用是帮助你看清变量怎么进入模型、结果文件怎么生成,而不是要求你在网页里手动运行。
* case code has not been generated yet
实际输出表
这张表是本方法页配套案例的输出结果,用来把前面的公式、变量口径和代码对应到实际数字。
该方法的案例输出表还没有生成。
案例图
这是一张由同一份案例数据生成的页面内诊断图。

论文里怎么写
为缓解模型设定或内生性担忧,本文补充报告Permutation 随机化推断。相关估计输出见 permutation_inference_results.csv。该检验不替代研究设计本身,但可以说明核心结论在替代识别、标准误或稳健性口径下是否保持一致。
检查清单
- 置换时固定主模型,只随机打乱核心变量或处理标签。
- 同时报告真实系数、常规 p 值、有效置换次数和经验 p 值。
- 置换次数少时 p 值分辨率有限;不要把 100 次置换写得过于精确。