DAG方法与自变量筛选 【9天实用统计学公益训练营Day3-3】

news2026/5/23 16:34:33
关注公众号的朋友都知道郑老师我之前连续4年开设了“30天学会医学统计学”从理论到实操一步一步教会大家统计学、SPSS课程。2026年我们对这门课程进行全新升级课程时间大幅度缩短内容大幅度提升我称为9天实用医学统计学公益训练营。课程介绍“9天实用医学统计学”公益训练营即将启动更高效、更高级的统计课本课程是浙江中医药大学医学统计学教研室的公益、免费公开视频课不是骗人入坑收费的广告。本课程公益视频课定期开课欢迎您参与学习。欢迎报名本公众号“医学论文与统计分析”后台回复“报名”加入微信学习群吧。Day 3-3 DAG方法与回归自变量筛选回归建模对于混杂因素或者潜在混杂因素的挑选有一定的方法。上一节讲的是先做差异性再挑选这种策略叫先单后多是数据驱动型的自变量筛选。这种自变量筛选是有必要的因为我们回归建模不能有太多的自变量。现在我们重点讲一下更加科学的方法自变量筛选要结合DAG的方法。DAG是一种方法也是一种理念一种思维方式。简明扼要地提一下现在比较流行的DAG方法对我们今后的研究肯定有帮助。√变量筛选策略的变化趋势近20年来回归建模的方法发生了很大的改变。我在跟踪流行病学杂志、四大医学流行病学期刊时看到了一个典型的趋势。一篇发表在著名的《美国流行病学杂志》上的文章连续跟踪了很多年专门讨论流行病学中变量的选择问题。它的题目就点明了回归建模转变的方向现在变量的选择不再强调数据驱动了。这篇文章把自变量的筛选策略分成了两种。第一种是理论驱动一般是先验知识法加上DAG方法。第二种是数据驱动就是我们之前讲过的先单后多、逐步回归法还有效应改变法。不过现在效应改变法用得也不多了。后面我们讲预测模型的时候还会讲一个lasso法lasso法也属于数据驱动法。这篇文章跟踪了2008年到2019年这十年间的数据变化它发现了变量筛选的一个明显趋势大多数文章利用先验知识来确定纳入回归的变量数据驱动的非常少——原文用的是very little。再看因果图的使用2008年基本上没有文章用因果图到了2019年这个比例已经达到了13%。因果图就是我们刚才讲的DAG这个工具。也就是说现在我们挑选潜在混杂因素更多的是通过专业知识来挑选相应的自变量。这些潜在混杂因素有时候我们也叫它协变量。√DAG的基本概念DAG最早在1980年图灵奖得主朱迪亚·珀尔Judea Pearl 提出了结构因果模型 SCM)。他说我们这个世界是由一系列稳定自主的因果机制构成的有一个因果结构网络能够用数学的语言去描述这个机制。这个结构因果模型的数学图形语言就叫有向无环图有方向的、没有回路的图形。DAG是带有箭头、没有回路的图形箭头表示因果的方向每个节点表示一个变量每条箭头表示因果机制。比如说示意图中吸烟和肺癌的关系吸烟改变基因突变造成肺癌。年龄作为混杂因素对吸烟有影响对肺癌有影响。另外还有一个叫碰撞变量当吸烟影响肺功能、肺癌也影响肺功能肺功能就是碰撞变量。因果图就是把变量之间的因果关系通过图形展示出来。DAG的核心价值是迫使研究者基于自己的领域知识明确地提出变量之间的因果假设要基于专业知识提出而不是基于数据驱动。它帮助我们识别混杂因素、中介变量和碰撞变量等等。混杂因素、中介变量和碰撞变量不可能是用数据来产生的数据只显示有关系但到底是混杂还是中介你没法用数据判定。首先你要用自己的专业知识来实现混杂因素的识别。DAG的实例分析我们来举例介绍一下DAG的方法。比如说研究癌症患者手术方式与预后的关系重点关注手术方式和最终结局。我们首先画出一个有向无环图也就是DAG。从年龄、性别出发一直到最后的结局中间有各种变量入院前吸烟情况、有无转移、手术方式还有术后化疗最后是结果。那画这个图干什么呢目的是当我们用回归方法来控制混杂偏倚的时候要知道该挑哪些变量放到模型里。传统上我们怎么做先单后多。很多人会犯一个误区——把分组比较中有差异的变量统统都放到模型里面去。比如手术方式不同那这两组之间哪些变量有差异就把它们都控制住。这样做其实是不对的。为什么呢因为不是所有有差异的变量都是混杂因素。有些变量可能是中介变量——也就是手术方式通过它来影响结局的这种变量不能控制控制了反而会掩盖真实效应。还有些变量可能是碰撞偏倚变量控制后会引入新的偏倚。所以DAG就是帮我们从因果结构上判断到底该控制谁不该控制谁。这比单纯看“有没有差异”要科学得多。√四种协变量的区分关于协变量需要澄清一下。我们常说的“协变量”广义上指对研究结局产生重要影响的变量。一般文章里主要指混杂因素比如年龄、性别。但从DAG视角看协变量远不止混杂因素还包括中介变量、碰撞变量等相关变量。下面结合“手术方式与预后关系”的DAG图逐一说明。· 中介变量比如术后是否化疗。手术方式既可以直接影响生存结局也可以通过“术后化疗”这个中间环节间接影响。术后化疗是中介变量不是混杂因素。中介变量不应该纳入回归模型否则会掩盖真实的直接效应。· 混杂变量比如年龄和肿瘤分期。年龄影响手术方式的选择也影响生存结局分期同样既影响手术方式又影响结局。混杂变量是需要纳入模型控制的。· 相关变量比如吸烟。吸烟与手术方式没有直接的因果关系但两者同时受年龄影响年龄影响吸烟习惯也影响手术决策因此吸烟与手术方式是相关的。在DAG中虽然没有箭头直接连接但这种相关也满足混杂条件的吸烟也是需要控制的混杂因素。· 碰撞变量碰撞变量是指一个变量同时受到暴露和结局的影响即两个箭头同时指向它也即是图中的SE → S ← O。它既不是混杂也不是中介绝对不能纳入模型否则会打开一条本不存在的“后门路径”扭曲因果推断。总结一下协变量不只有混杂因素还有中介变量、碰撞变量等。如果不加区分把中介变量或碰撞变量错误地纳入回归模型不但无法控制混杂反而会引入新的偏差导致结果错误。这听起来有点复杂但确实非常重要。√DAG的绘制现在DAG的绘图网站已经非常成熟了最权威、最实用的网站是DAGitty5分钟就能学会。实际上DAG就是画箭头画箭头是要靠专业知识去连的。√DAG结合回归建模的四个步骤DAG结合回归建模一般有四个步骤。第一收集文献掌握暴露、结局和其他协变量之间的关系除了已测变量也包括未测指标、未测混杂都要包括在内。第二基于理论结合研究设计方案去绘制DAG理论知识有了还得探讨研究方案因为有些变量之间的关系是双向的。比如老年人慢性病生命质量影响因素社交活动对老年人生命质量有促进影响但是在横截面调查里面关系可能是反的是生命质量影响了社交活动身体差了就不愿意社交。所以设计DAG的时候一定要想清楚在具体的场景下因果关系应该是怎样的。比如吸烟会导致肺功能变差但是在一定场景下肺功能差的人反而戒烟了不吸烟与肺功能差反而有关系。所以在具体的研究场景中思考两个变量的关系谁因谁果因果关系特别是双向因果关系并不是恒定的不能随便画。第三选择合适的统计方法建模挑选潜在混杂因素作为协变量纳入模型建模策略有三种多模型策略、数据驱动策略、倾向得分策略。第四敏感性分析看不同的建模策略、不同的统计技术结果是不是相似相似的结果就稳健。√DAG多模型控制策略在具体的建模策略上多模型策略是结合DAG工具挑选存在的潜在混杂因素同时构建多个合格模型每个模型包括不同数量的潜在混杂因素。一般会构建多个模型基于专业知识和文献逐步增加协变量一开始没有协变量然后包括人口学的再包括社会经济的、生活行为方式的、疾病特征的等等。多模型策略也是一种敏感性分析看看结果是否稳健。这种先验知识法最好结合DAG方法现在越来越多的杂志认可。√DAG数据驱动控制策略还有一种传统的数据驱动策略就是先单后多先做差异性有差异的协变量条件一P0.05纳入模型开展多因素回归条件二P值也0.05。根据模型自变量数量和样本量来决定策略样本量越大自变量个数可以越多样本量越小自变量个数就得越少。策略一是第一条件和第二条件同时满足P值小于0.05这是最苛刻的策略二是第一条件或第二条件任意一个满足P值小于0.05就纳入策略三是全变量纳入不挑选。需要提醒大家的是我们之前都没讲过DAG现在讲DAG和先验知识法就是要提醒大家在做差异性、将分组不均衡的因素纳入模型的时候一定要留意它是不是潜在混杂因素不要把中介变量或碰撞变量纳入模型。不是所有分组有差异的变量都可以纳入模型那是以前傻瓜式的做法。案例新冠康复者的影响因素研究举个例子2021年8月27日中国中日友好医院曹彬教授联合首都医科大学等研究人员在国际顶级期刊《柳叶刀》上在线发表了题为 1-year outcomes in hospital survivors with COVID-19a longitudinal cohort study 的研究论文该研究对2020 年 1 月 7 日至 5 月 29 日期间从金银潭医院出院的 COVID-19 幸存者进行了一项双向队列研究。针对疲劳或肌肉无力、焦虑或抑郁、弥散功能障碍三个结局指标作者开展了影响因素研究。暴露因素包括age, sex, cigarette smoking, education, comorbidity, corticosteroids, antivirals, and intravenous immunoglobulin、disease severity 。统计学方法logistic回归如果按照传统的影响因素分析把所有变量放在一起做个回归模型就可以了。但学了先验知识法和DAG工具后会发现研究不同变量时混杂和中介是不同的。√当暴露因素是疾病严重程度disease severity时年龄、性别、吸烟状态、教育程度、并发症、皮质类固醇、抗病毒治疗、静脉注射免疫球蛋白都是潜在混杂变量所以回归分析的时候都一同纳入。√当分析教育和吸烟程度与结局的关系时并发症、疾病严重程度不能纳入模型因为它们可能是中介变量。√当分析年龄与结局的关系时性别、吸烟状态、教育程度能放了因为其它变量可能是中介变量。√当分析并发症与结局的关系时疾病严重程度不能纳入模型因为它可能是中介变量。所以无论探讨哪一个影响因素一定要明确哪些是混杂、哪些是中介这样建模才是科学的才真正做到了因果推断。否则把所有变量放进去分析一遍结果不可靠。本章总结关于因果推断中的回归建模有几个关键点需要记住第一混杂与中介并非一成不变的。混杂因素和中介变量都会干扰暴露与结局的关联性但处理方式不同混杂因素应该纳入模型中介变量一般不纳入模型这句话听进去了本章节你就理解了大半。第二统计建模时不关注模型好不好看。我们一般不太注重模型建得漂不漂亮——不关注AUC面积有多大、R平方有多大也不考虑模型的总体效果。只关注一件事有没有控制好混杂。而且因果推断中需要控制的协变量个数通常比传统的影响因素分析更严格。第三先验知识法结合DAG工具应该成为挑选混杂因素的主要手段。特别是要注意不能纳入中介变量。第四控制混杂的回归模型不要用逐步回归法。我不是说回归不能用逐步法而是在“控制混杂”这个目标下不要用。我们允许没有意义的协变量留在模型里不用画蛇添足。至于逐步回归法后面讲预测模型的时候做组合优化就用得着了。本章节讲的是理论内容一共分三个层级。大家如果有更多疑问可以在公众号“医学论文统计分析”后台回复2003我们会持续更新答疑帖——很多人在问的问题我们都会汇总起来统一答复。最后提醒要学习本推文的完全对应的课程视频请发送关键词“报名”至公众号加入高校公益免费课程群来学习吧。关于郑老师团队及公众号全国较大的医学统计服务平台专注于医学生、医护工作者学术研究统计支持郑老师团队可以提供诸多统计支持各式统计课程、临床试验设计构建预测模型与真实世界研究“双库”保发表训练营、医学数据库挖掘详情联系助教小董咨询微信号aq566665

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2634996.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…