分享

使用TwoSampleMR进行两样本的孟德尔随机化研究

 生信修炼手册 2019-12-25

TwoSampleMR是MR-Base数据库开发团队提供的R包,可以调用MR-Base数据库中已有的gwas结果,来进行2SMR分析,官方文档链接如下

https://mrcieu./TwoSampleMR/

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()
outcome_dat <- extract_outcome_data(
snps=exposure_dat$SNP,
outcomes=7)

3.  Harmonise data

调整暴露因素和结局变量的gwas结果,主要目的

  1. 将SNP位点统一调整成正链

  2. 根据allele和频率判断两个gwas结果中的SNP位点是否一致,不一致的进行去除

同一个位点在两个gwas结果中链的方向不一致的情况示意如下

exposure effect = 0.5
effect allele = A
other allele = G
outcome effect = -0.05
effect allele = C
other allele = T

方向不一致的位点只需要统一调整成正链就可以了,snp位点不一致的情况示意如下

exposure effect = 0.5
effect allele = A
other allele = G
outcome effect = -0.05
effect allele = A
other allele = C

从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·

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多