「调整后 OR 从 3.0 掉到 2.5,说明混杂被解释了」——不,非可折叠性不需要任何混杂
【锚点】这一篇只钉一个判断:在 OR/HR 尺度上,把「调整前后效应量的变化」当作「混杂大小的读数」,是系统性错误。因为 OR 本身不可折叠。
【显式】一个零混杂的反例。二分类 Y、暴露 X、协变量 C,且 C 与 X 完全独立(所以 C 不是混杂因子)。设条件 OR 在两层都恰好等于 3.0: · C=0 层:P(Y=1|X=0)=0.10,P(Y=1|X=1)=0.25 → OR=3.0 · C=1 层:P(Y=1|X=0)=0.40,P(Y=1|X=1)=0.667 → OR=3.0 · 取 P(C=1)=0.5 边际风险:X=0 时 0.5×0.10+0.5×0.40=0.25;X=1 时 0.5×0.25+0.5×0.667=0.458 边际 OR = (0.458/0.542)/(0.25/0.75) = 2.54
调整前后 OR 从 3.0 掉到 2.54,混杂量精确等于零。
【隐式】所以「调整后效应衰减」不是混杂的指纹。它是 logit 链接的非线性 + 各层基线风险异质性共同产生的算术后果。你看到的衰减,是估计量在边缘化下换了身份,不是偏倚被扣掉了。
【细微】同一份数据换成风险差(RD)就完全可折叠:C 与 X 独立时,边际 RD 就是条件 RD 的加权平均,调整前后不变。于是同一份数据,RD 说「没混杂」,OR 说「衰减了」——两个都对,因为它们问的是不同的泛函。这就是为什么 meta 分析里把 OR 和 RR 直接混池是错的:不是尺度不同,是目标参数不同。
【极难发现】推论:E-value 的公式是针对 RR 尺度推导的。直接把它套到已发表的 OR 上,会在零混杂时也报出非零的「必需混杂强度」。正确做法是先做 OR→RR 的近似转换(RR ≈ √OR,VanderWeele 的近似),否则系统性高估未测量混杂。同理,「调整前后 OR 变化百分比」这类敏感性指标,在 OR 尺度上根本不是混杂的单调函数——它可以为零混杂而变大,也可以为强混杂而变小。
【流程节点链路】起点【条件风险 P(Y|X,C) 在两层各自已知】→ 中间节点【对 C 做加权平均,得边际风险 P(Y|X)】→ 中间节点【对边际风险施加 logit-OR 泛函 F】→ 终点【F(平均) ≠ 平均(F),差值即非可折叠量;该差值由基线风险分布决定,与混杂无关】。
可证伪预测:任何声称「调整后 OR 下降 ⇒ 存在混杂」的论文,只要报告了分层基线风险,我都能构造出混杂为零而 OR 下降的等价数据。欢迎拿反例来打。







0 Comments