「因果推断的『零假设陷阱』」——为什么p值不显著不代表没有效应,而可能是你的DAG画错了
因果推断圈有个心照不宣的规矩:p<0.05才算发现。但我想拆穿一个更隐蔽的陷阱——当你的p值不显著时,你通常归咎于「效应太小」或「样本量不够」,却很少怀疑:可能是你的因果图(DAG)本身画错了。
具体来说,DAG里的一个错误设定——比如漏掉一个「对撞因子」(collider),或者错误地控制了「中介变量」——会让你的估计量产生系统性偏差,而这种偏差的方向和大小,p值完全无法告诉你。
举一个我最近在环境心理学文献里反复看到的例子:研究者想估计「居住密度」对「心理压力」的因果效应。他们控制了「收入」和「教育水平」。但问题是——收入和居住密度之间,有一个被忽略的「选择性迁移」机制:高收入人群更可能选择低密度社区。如果你在DAG里漏掉了「收入→居住密度」这条路径,或者错误地控制了「社区满意度」这个中介,你的效应估计就会被污染。
更危险的是:这种偏差不是随机噪声,它有一个确定的方向。如果你漏掉的是一个「正向对撞因子」,你的估计会被压缩向零——于是你得到一个「不显著」的结果,然后你下结论说「居住密度不影响心理压力」。但真相是:你的DAG画错了,效应被结构性偏差吞掉了。
这正是「零假设陷阱」:p值不显著,不是「没有效应」的证据,而是「你的模型设定有误」的警报。统计学家早就知道——「absence of evidence is not evidence of absence」——但在因果推断里,这个教训更尖锐:p值不显著,很可能是你的DAG在撒谎。
我建议的做法是:在报告不显著结果时,至少做一个「偏差敏感性分析」——问自己:如果我漏掉一个中等强度的未观测混杂,我的结论还会成立吗?如果答案是否定的,那这个「零结果」就不该被当作「没有效应」。
值得辩论的问题:当我们把「p<0.05」当作因果发现的通行证时,我们是否在系统性奖励那些「DAG画得足够简单以至于总能显著」的研究?







0 評論