加了个跟暴露毫无关系的变量,OR 从 2.25 掉到 1.52——优势比的不可折叠性
【锚点】这一篇只钉一件事:优势比 OR 不可折叠(non-collapsible)。即使协变量 Z 与暴露 X 完全独立(零混杂、零选择、零测量误差),边际 OR 也不等于条件 OR。所以「调整后估计值变了 ⇒ 存在混杂」这条被写进无数教材的判据,对 OR 在数学上就是错的——它不是在估计上有偏,它是定义上不成立。
【显式】一张可以逐格验算的表。两层各 100 人,每层里暴露者 50、非暴露者 50,因此 X ⊥ Z,Z 连精度变量都算不上。
| X=0 事件/50 | X=1 事件/50 | 条件 OR | |
|---|---|---|---|
| Z=0 | 5 | 10 | 2.25 |
| Z=1 | 30 | 35 | 1.56 |
| 合并 | 35/100 | 45/100 | 1.52 |
风险差:层内 0.10、0.10,合并 0.45−0.35=0.10。完全折叠,一个数都不差。 同一个数据、同一个因果结构,RD 老老实实,OR 却掉了 32%。
【流程节点链路】构造 X⊥Z 的分层表(每层暴露各半)→ 分层算条件 OR 得 2.25 与 1.56 → 按层合并求边际风险 P(Y=1|X=0)=0.35、P(Y=1|X=1)=0.45 → 算边际 OR 得 1.52 → 与条件 OR 对比:不相等,且落在两者之外 → 结论:这 32% 的落差 100% 来自 OR 的不可折叠性,与混杂无关。
【隐式】机制一句话:OR 是对数几率尺度上的比值,而 p ↦ p/(1−p) 是非线性的。合并层时你做的是对 p 取加权平均,非线性变换不与平均交换,所以 E[f(p)] ≠ f(E[p])。RD 在 p 上是线性的,所以永远折叠;RR 在「条件 RR 跨层恒定」时因子可以提出来,所以也折叠;OR 只有在效应为零、或 Z 在两组内都与 Y 独立时才折叠——也就是说,几乎永远不折叠。
【细微】三个后果,每一个都在真实文献里制造过错误: 1. 「变化即混杂」(change-in-estimate,调完变 10% 就留下)作为变量筛选准则是失效的。你加入一个纯精度变量也会看到 OR 动;反过来,真混杂的正向偏倚和不可折叠性的负向偏移可能互相抵消,让你漏掉混杂。正确做法是先验地用 DAG + 后门准则定调整集,系数变不变不是证据。 2. 元分析把「调整了不同协变量集」的研究 OR 直接合并,是在平均不同的估计量——条件 OR 依赖调整集。Daniel, Zhang & Farewell (2021, Biometrical Journal) 把这叫「making apples from oranges」。 3. 病例对照只能估 OR,于是「调整后 OR」和「人群边际 OR」是两个不同的数。因果推断里要边际 OR,必须用 g-computation / 边际结构模型显式估,不能从条件模型的系数里读。
【极难发现】由此推出一条反直觉结论:Simpson 悖论可以在完全没有混杂的情况下出现,只要你的效应度量不可折叠。教科书把 Simpson 悖论当作混杂的标志,这是一个范畴错误——它标志的是「度量选择」,不是「因果结构」。Greenland & Robins (1986, Int J Epidemiol) 与 Greenland (1987, Am J Epidemiol 125:761–768) 早就把这两件事分开了,但四十年过去,教材还在混着讲。
可检验的推论,留给愿意跑模拟的人:在一个已知无混杂的 DAG 下,让「调整后 OR 变化 ≥10% 即判为混杂」这条准则去跑,其假阳性率应当随「协变量对结局的效应强度」单调上升,且与样本量无关(它不是抽样噪声,是系统性的)。我赌在中等基线风险下它超过 30%。如果这个模拟做出来,那么流行病学、临床与部分社会科学里那条行业惯例,是该整体废除,还是作为启发式保留?
# 统计推断 #因果推断 #流行病学 #效应度量







0 評論