源自风暴统计网一键统计分析与绘图的AI网站因果有向无环图简称DAG是临床研究中阐明因果假设的核心工具。它不靠统计软件自动“跑”出来而是靠研究者基于背景知识手动“画”出来的。在先前的推文中我们分享过DAG的重要性以及如何对其进行解读一文搞懂医学研究因果推断中的有向无环图DAGs北大硕士一作JAMA子刊最新研究四大医学顶刊如何应用有向无环图DAG但在实际操作中很多研究者画出的DAG过于简单被称为“玩具模型”。然而真实的科研场景其实充满挑战——测量误差、患者不依从、数据缺失、甚至受试者的怨恨情绪——这些复杂因素如何在DAG中体现2026年TOP期刊《Psychological Methods》发表的长文给出了答案。该研究提出了一套绘制可信DAG图的六步迭代法并结合“线上 vs. 线下认知行为疗法CBT治疗抑郁”的案例深度拆解了这一流程。构建可信DAG六步迭代法第 1 步确定核心因果过程 (Causal Process)这一步要画出你最关心的核心问题治疗如何影响结局首先画出治疗变量T和结局变量Y并用箭头连接。如果关注中介机制可以加入中介变量。在本例中研究者认为CBT的效果完全是通过改变“认知情感机制”C1来实现的因此画出了路径T → C1 → Y而不是直接从T到Y。图1第1步 - 核心因果过程第 2 步识别选择过程 (Selection Process)这一步要思考受试者是如何被分到不同治疗组的找出所有直接影响治疗分配T的变量。在这个准实验设计中研究者根据患者的前测抑郁分P、人口学特征S*和基线认知情感机制C0*来决定分组。因此需要画出从这些变量指向T的箭头。图2第2步 - 选择过程添加的箭头进行了加粗第 3 步考虑结果生成过程 (Outcome-Generating Process)除了治疗本身还有哪些因素会直接影响结局这一步要找出所有直接影响结局Y或其直接前因变量如中介变量C1的因素。研究发现遗传因素G、治疗后的身体健康H1和药物使用M1都会影响C1进而影响Y。同时人口学特征S不仅通过C1影响Y还可能直接作用于Y如问卷的条目功能差异。将这些变量和因果关系加入图中。图3第3步 - 结果生成过程添加的箭头进行了加粗第 4 步两两检查关联 (Pairwise Interrelations) ——最关键的迭代点现在对图中已有的所有变量进行“两两扫描”。问自己两个问题这两个变量间有直接因果关系吗它们是否有共同的、但尚未画出的原因混杂因素如果有直接因果直接添加箭头。如果有共同原因必须添加这个新的共同原因——即使它无法测量也用一个 U 节点表示。这一步中研究团队添加了从潜变量S到其测量指标S*、从遗传因素G到基线认知C0等直接箭头。同时发现治疗前的身体健康H0同时影响基线认知C0和治疗后健康H1因此添加了H0作为C0和H1的共同原因。图4第4(a)步 - 添加直接因果关联添加的箭头进行了加粗图5第4(b)步 - 添加共同原因混杂添加的箭头进行了加粗文章强调如果你不确定两个变量间是否存在因果关联建议加上箭头因为漏掉一个箭头意味着你强行假设其效应为0。漏掉关联导致的偏倚往往比多画一个关联要严重得多。第 5 步加入额外的观测变量 (Additional Observed Variables)这一步至关重要它帮助你区分“真实的因果变量”与“实际测得的数据”。加入你实际测量到的变量并将它们与真实的潜变量连接起来。例如我们实际测量的是药物使用的自我报告M0*,M1*而非真实的药物使用情况M0,M1。因此需要在图中添加M0 → M0*和M1 → M1*。这能帮助识别测量误差带来的偏倚。图6第5步 - 添加观测变量添加的箭头进行了加粗第 6 步迭代前两个步骤重复第4步和第5步。每当你添加了一个新变量都必须再次检查它与其他所有变量的关系直到没有新的变量或关联需要添加为止。图7第6步迭代- 添加新的直接因果关联添加的箭头进行了加粗图8第6步迭代- 添加新的共同原因添加的箭头进行了加粗通过这六个步骤的迭代我们最终得到了一张复杂的、贴近真实世界的最终因果DAG。图9最终因果DAG准实验设计添加的箭头进行了加粗同一个问题三种设计三种DAG构建DAG的最终目的是为了指导分析。同一个研究问题在不同的研究设计下DAG的结构会发生根本性变化这直接决定了你的分析策略。在观察性研究中治疗选择完全由患者或环境决定且可能存在未观测到的混杂如患者病情严重程度同时影响治疗选择和康复。从DAG上看T会收到来自潜变量如真实的认知状态C0的箭头这给识别带来了巨大挑战。图10观察性研究的DAG添加的箭头进行了加粗在准实验设计中虽然不是随机分配但分配机制是已知且可观测的如根据前测得分P分配。此时T只受到可观测变量C0*,P,S*的影响。这为我们指明了调整集只要在分析中控制住这些变量就能阻断所有混杂路径。在随机对照试验中这是最“干净”的DAG。存在一个随机化节点R没有任何变量会指向R。R通过决定T从而影响Y。理论上T和所有基线变量都是独立的不需要调整任何变量即可得到无偏估计。图12随机对照试验的DAG添加的箭头进行了加粗用DAG表达研究中的各类挑战现实研究中的各种“有效性威胁”都可以用DAG直观表达。怨恨性消沉在RCT中被分到“线上组”的患者因没选中心仪的治疗而感到沮丧这种负面情绪促使他们私下服药。在DAG中这表现为从分配结果T指向“服药情况M1”添加一个箭头引入了一条非预期的因果路径T → M1 → C1 → Y。图13RCT中加入“怨恨性消沉”威胁后的DAG添加的箭头进行了加粗非依从性患者虽然被分到A组但实际接受了B组治疗。在DAG中增加一个从“实际治疗接受情况”指向T的箭头这引入了新的混杂路径导致简单的组间比较不再有效。图14RCT中加入“非依从性”威胁后的DAG添加的箭头进行了加粗中介分析当想要探究作用机制时DAG同样至关重要。它帮助我们识别出即使治疗是随机的中介变量M1和结局Y之间仍然可能存在复杂的混杂关系这远比传统的三步中介回归要复杂得多。图15用于中介分析的DAG添加的箭头进行了加粗总结读完这篇文章最深刻的体会是“可信”比“识别”更重要。很多研究者担心把DAG画得太复杂会导致因果效应“不可识别”。但作者给出了一个发人深省的真相即便统计上不可识别一张包含所有合理假设的、复杂的、可信的DAG依然具有巨大价值。它迫使你面对现实承认现有数据可能无法完全消除偏倚而不是假装偏倚不存在。它让同行能清晰看到你的研究假设在哪里从而进行有针对性的讨论。哪怕不能完全解决混杂它也能告诉你调整哪些变量能最大程度地减小偏差并为敏感性分析指明方向。记住两个核心原则加胜于减面对不确定的关联宁可多画一个箭头也不要漏掉一个潜在的混杂。区分投影意识到你手里的数据观测值往往只是真实因果过程的一个“投影”。【感谢阅读浙中大郑老师团队撰写的统计文章】关于郑老师团队及公众号【因果推断与机器学习】未来医学科研的大势所趋临床、护理、公卫的朋友们2026年将是诸位因果推断方法革新的一年。郑老师团队推出“因果推断与机器学习”训练营丰富的因果推断方法教学课程理论结合R语言实操覆盖从基础到进阶的完整链条欢迎参加模块一理论1.流行病任务与因果推断2.因果推断与偏倚控制模块二回归与G方法3.回归的方法及其应用4.G方法及实践模块三倾向得分5.倾向得分方法6.倾向得分加权模块四机器学习7.机器学习理论8. 机器学习与 G方法9.机器学习与倾向得分模块五双重稳健估计方法10.双重稳健方法11.双重机器学习模块六TMLE方法12.TMLE 方法13.机器学习与 TMLE方法模块七缺失数据填补与因果推断14.缺失数据填补与机器学习15.缺失数据填补后双重稳健估计模块八中介分析与因果中介16.中介分析与因果中介17.双重稳健估计下的中介分析模块九处理效应异质性分析18.处理异质性分析方法19.因果森林方法报名训练营请添加郑老师助教微信咨询微信aq566665