TwoSampleMR是MR-Base数据库开发团队提供的R包,可以调用MR-Base数据库中已有的gwas结果,来进行2SMR分析,官方文档链接如下
2SMR分析需要两个输入文件,第一个文件为遗传变异与暴露因素的gwas结果,第二个文件为遗传变异与结局变量的gwas结果。对于暴露因素相关的gwas结果,TwoSampleMR支持读取自定义的结果,同时也支持直接调用MR-Base中的结果;对于结局变量相关的gwas结果,仅支持调用MR-Base中的结果。 分析的pipeline示意如下 分为了以下4大步 1. read exposure data读取暴露因素的gwas结果,支持自定义,文件内容示意如下 对于上述文件,读取的代码如下 exposure_dat <- read_exposure_data(exp_file) 2. read outcome data读取结局变量的gwas结果,仅支持读取MR-base数据库中的gwas结果,需要google账号,读取的代码如下 ao <- available_outcomes() 3. Harmonise data调整暴露因素和结局变量的gwas结果,主要目的
同一个位点在两个gwas结果中链的方向不一致的情况示意如下
方向不一致的位点只需要统一调整成正链就可以了,snp位点不一致的情况示意如下
从allele可以看出,这两个位点是不一致的,这样的位点需要被去除。这部分对应的代码如下 dat <- harmonise_data(exposure_dat, outcome_dat) 4. 运行MR分析协整之后就可以进行MR分析了,对应的代码如下 res <- mr(dat) 默认采用多种方法进行MR分析。其中MR-Egger回归和IVM方法还支持进行异质性的检验,用法如下 mr_heterogeneity(dat) 基因多效性则通过MR-Egger回归的截距进行判断,代码如下 mr_pleiotropy_test(dat) TwoSampleMR对2SMR的过程进行了高度封装,保证了分析流程的易操作性,高准确度,美中不足的是,结局变量的gwas结果不支持自定义,缺乏了一丝灵活性。 ·end· |
|