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

欢迎关注”生信修炼手册”!

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

https://mrcieu.github.io/TwoSampleMR/

2SMR分析需要两个输入文件,第一个文件为遗传变异与暴露因素的gwas结果,第二个文件为遗传变异与结局变量的gwas结果。对于暴露因素相关的gwas结果,TwoSampleMR支持读取自定义的结果,同时也支持直接调用MR-Base中的结果;对于结局变量相关的gwas结果,仅支持调用MR-Base中的结果。

分析的pipeline示意如下

使用TwoSampleMR进行两样本的孟德尔随机化研究_第1张图片

分为了以下4大步

1.  read exposure data

读取暴露因素的gwas结果,支持自定义,文件内容示意如下

使用TwoSampleMR进行两样本的孟德尔随机化研究_第2张图片

对于上述文件,读取的代码如下

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·

—如果喜欢,快分享给你的朋友们吧—

本公众号深耕耘生信领域多年,具有丰富的数据分析经验,致力于提供真正有价值的数据分析服务,擅长个性化分析,欢迎有需要的老师和同学前来咨询。

  更多精彩

  • KEGG数据库,除了pathway你还知道哪些

  • DNA甲基化数据分析专题

  • 突变检测数据分析专题

  • mRNA数据分析专题

  • lncRNA数据分析专题

  • circRNA数据分析专题

  • miRNA数据分析专题

  • 单细胞转录组数据分析专题

  • chip_seq数据分析专题

  • Hi-C数据分析专题

  • HLA数据分析专题

  • TCGA肿瘤数据分析专题

  • 基因组组装数据分析专题

  • CNV数据分析专题

  • GWAS数据分析专题

  写在最后

转发本文至朋友圈,后台私信截图即可加入生信交流群,和小伙伴一起学习交流。

扫描下方二维码,关注我们,解锁更多精彩内容!

生物信息入门

只差这一个

公众号

点击下方“阅读原文”,我们一起进步!

你可能感兴趣的:(使用TwoSampleMR进行两样本的孟德尔随机化研究)