聊一聊变量筛选

在使用观察性研究数据(例如,队列研究、医院电子病例系统数据)进行相关性分析或因果推断时,常常面临一个重要问题:变量的筛选。绝大部分人会用以下错误的方式:逐一将单个变量放入回归,看单个变量是否有统计学意义;有意义的就筛选出来当作混杂因素,进一步进行多变量回归。当然也有稍微有点点水平的,不看p值,或者弱化p < 0.05这个条件。更有一拨人,觉得自己很牛逼,网上复制一堆代码,用什么机器学习、深度学习,神经网络这种高逼格词汇包装一下,用上述换汤不换药的方式去筛选变量,然后洋洋自得。显然一副无知者无畏的境界。
以上的方式都是错误的。很难想象这种错误的做法被那么多人所使用。如果让Greenland Sander知道了,估计会怼死那些传播这种错误方式的人。什么是混杂因素?混杂因素是指既跟暴露/干预有关、又跟结局有关的那些变量。我们假设A为暴露,D为结局。B作为潜在变量。如果A可以导致B的发生,而B又可以导致D的发生,我们可以将B视为混杂因素。否则,B就不能作为混杂因素,这时就不能放入回归模型,或者说这个时候放入回归模型毫无意义。

那么到底怎么筛选变量?请记住,只有一种方法: 因果分析路径。只要我们找出了到底哪些变量是混杂因素,这些变量就是我们要筛选的变量。其中一种在国外被广泛使用的方法是Directed acyclic graph(DAG)路径图。下图为图例。该路径图以不同颜色区别变量标签(各位自行去探讨),同时以箭头去指示变量间的关系。根据作者建立的网络关系图,识别真正的混杂因素。

以吸烟与高血压作为示例。假设我们有如下变量:年龄,性别,地区,饮酒历史,学历,家庭社会经济状况,糖尿病史,乙肝病史,其他心血管疾病史,手术史,家族高血压史,红细胞浓度,血糖水平,尿蛋白水平,日均尿量。哪些变量是真正的混杂?我们可以建立如下关系(以下“→”表示生物学有关,“||”表示生物学无关),仅作示例,更具体的联系需要不同领域专家讨论:
  1. 年龄→吸烟;年龄→高血压;
  2. 性别||吸烟;性别||高血压;
  3. 地区||吸烟;地区||高血压;
  4. 吸烟||饮酒;饮酒→高血压;
  5. 性别→饮酒;
  6. 地区→饮酒;
  7. 学历→吸烟?学历||高血压;
  8. 家庭社会经济状况→吸烟;家庭社会经济状况→高血压;
  9. 家庭社会经济状况→学历;
  10. 地区→家庭社会经济状况;
  11. 糖尿病史||吸烟;糖尿病史||高血压;
  12. 糖尿病史→血糖水平;
  13. 乙肝||吸烟;乙肝||高血压;
  14. 吸烟→其他心血管疾病;其他心血管疾病→高血压;
  15. 家庭社会经济状况→其他心血管疾病;
  16. 既往手术史||吸烟;既往手术史||高血压;
  17. 家族高血压史||吸烟;家族高血压史→高血压;
  18. 家族高血压史→其他心血管疾病;
  19. 吸烟→红细胞浓度;红细胞浓度||高血压;
  20. 年龄→红细胞浓度;
  21. 性别→红细胞浓度;
  22. 血糖水平||吸烟;血糖水平||高血压;
  23. 血糖水平→尿蛋白;
  24. 血糖水平→日均尿量;
  25. 尿蛋白||吸烟;高血压→尿蛋白;
  26. 饮酒→尿蛋白;
  27. 日均尿量||吸烟;高血压→日均尿量;
根据上述关系,我们可以建立清晰的DAG路径,包括各种变量间的关系。根据这些关系,就可以清晰的知道需要校正的变量包括哪些(下图右上角):其他血管疾病,学历,家庭社会经济状况,家族高血压史,年龄。

剩下的一些未被确定为混杂因素的变量怎么处理?交互作用(亚组分析),或者effect modification。例如,看看性别或日均尿量是否增强或减弱吸烟与高血压的效应。此时更要注意因果关系还是相关关系。最后,各位没事就要多读书,多读经典文献,不要瞎看(特别是那些网络视频、网络帖子,低质量中文文献),更不要盲目跟风。祝各位研究顺利。
meta分析

零事件研究个数对合并后结果的影响

2021-10-14 15:42:45

meta分析

12种率的合并方法及结果一致性的比较

2021-10-14 15:43:06

声明 本网站部分文章源于互联网,出于传递更多信息和学习之目的转载,并不保证内容正确或赞同其观点。
如转载稿涉及失效、版权等问题,请立即联系管理员;我们会予以修改、删除相关文章,请留言反馈
Notice: When your legal rights are being violated, please send an email to: sci666net@qq.com.
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索