孟德尔随机化之MendelianRandomization包(第五讲)

2022-08-21 17:32:17 浏览数 (2)

‍‍‍‍在“MendelianRandomization”包的前四讲内容中,米老鼠和大家介绍的都是单变量MR研究,也即一个暴露对应一个结局的研究。不过,我们在这里假设两种情形:(1)以脂质作为暴露因素时,我们很难找到只和HDL相关,但和LDL不相关的SNP,也就是不同的危险因素之间有很多共同遗传变异;(2)如果不同的暴露因素之间存在着中介效应,那我们也很难寻找只和单一危险因素相关的遗传变异。总之,当多个危险因素存在很强的关联时,我们需要使用多变量MR(multivariable MR)来进行准确的因果关系估计。

代码语言:javascript复制
library(MendelianRandomization) #加载R包
MRMVInputObject <- mr_mvinput(bx = cbind(ldlc, hdlc, trig),
                              bxse = cbind(ldlcse, hdlcse, trigse),
                              by = chdlodds, byse = chdloddsse) #MVMR的input格式会和单变量的有所不同
MRMVInputObject

这里的第一个暴露是LDL,第二个暴露是HDL,第三个暴露是Triglycerides。从这里我们可以看出,我们需要每个SNP在所有暴露中的GWAS summary数据,因此做多变量MR研究通常需要我们有完整的GWAS summary数据

代码语言:javascript复制
MRMVObject1 <- mr_mvivw(MRMVInputObject,
                        model = "default",
                        correl = FALSE,
                        distribution = "normal",
                        alpha = 0.05)

关于mr_mvivw()函数的这些参数,相信大家都应该非常熟悉了,我这里就不赘述了。

代码语言:javascript复制
MRMVObject1
代码语言:javascript复制
MRMVObject2 <-  mr_mvegger(MRMVInputObject, 
                           orientate = 1,
                           correl = FALSE,
                           distribution = "normal", 
                           alpha = 0.05)

这里我们需要注意一下参数orientate,它表示的是将某一个risk factor进行翻转(也即将其beta值全部变为正值),如果是1,表示将第一个risk factor的beta值全部翻转为正值,这个risk factor也是我们主要关注的。除此之外,其他参数均和mr_mvivw()的类似。

代码语言:javascript复制
MRMVObject2

‍‍‍

从上面的结果来看,第一个(LDL)和第三个暴露(triglycerides)均能显著增加CHD的风险,而HDL对CHD并没有保护作用。需要注意的是,IVW和MR-Egger方法均显示这个分析有一定的异质性,同时MR-Egger显示有多效性,说明我们在实际解读结果时选用MR-Egger的结果更加合理

本次推送,领大家学习了“MendelianRandomization”包进行多变量MR研究,希望能给大家带来帮助!

0 人点赞