孟德尔随机化:twosampleMR 实战
发布日期:2024-07-22 07:59 点击次数:126
💡专注R语言在🩺生物医学中的使用
设为“星标”,精彩不错过
两样本孟德尔随机化专用R包TwoSampleMR,可以和 IEU open GWAS 数据库无缝连接,可通过在线的方式直接查询数据库资源,并实现分析、下载等功能。
除此之外,还可以使用本地数据进行MR分析,是目前用的最多的MR分析R包,只要你做MR分析,基本上不可能绕过这个包。所以我认真学习了它的官方文档,整理下分享给大家~
本文目录:
安装
overview
基础使用
敏感性分析
Steiger方向性检验
1-to-many forest plot
例1
例2
多变量MR(MVMR)
MR-MoE
整合所有结果
安装remotes::install_github("MRCIEU/TwoSampleMR")overview
使用TwoSampleMR进行MR分析主要就是4步:
为暴露因素选择合适的工具变量(必要时进行连锁不平衡的过滤)对感兴趣的结局提取工具变量统一暴露因素和结局的数据,使得reference allele保持一致进行MR分析、敏感性分析、可视化图片
基础使用直接使用IEU的API,使用在线的方式查询、分析、提取IEU open GWAS 数据库中的工具变量。这个功能其实是借助ieugwasr实现的。
首先我们要选择合适的暴露因素和结局,暴露因素我这里选的是BMI(body mass index),结局选的是CHD(冠心病)。也就是我想研究BMI对冠心病的因果关系。
BMI在IEU open GWAS 数据库中的ID是ieu-a-2,CHD的ID是ieu-a-7。
图片
图片
选好之后,就是用代码查询暴露和结局相关的SNP。
在提取暴露因素相关的工具变量时,会自动进行去除连锁不平衡的SNP,由于这一步是在线进行的,需要联网,所以这一步对网络有要求,有可能会经常失败,此时我们也可以下载数据到本地进行处理(下次再讲),也可以得到一样的结果。
提取结局相关的SNP这一步也是在线进行的,也有可能会失败。
harmonise_data这一步是必须的,以确保暴露和结局的SNP的效应等位基因是一样的。
library(TwoSampleMR)# Registered S3 method overwritten by 'data.table':# method from# print.data.table # TwoSampleMR version 0.5.8 # [>] New: Option to use non-European LD reference panels for clumping etc# [>] Some studies temporarily quarantined to verify effect allele# [>] See news(package='TwoSampleMR') and https://gwas.mrcieu.ac.uk for further details# List available GWASs#ao <- available_outcomes()# 提取暴露相关的SNPexposure_dat <- extract_instruments("ieu-a-2", access_token = NULL)# API: public: http://gwas-api.mrcieu.ac.uk/#save(exposure_dat,file = "./ieu/exposure_data_ieu-a-2.rdata")# 提取结局相关的SNPoutcome_dat <- extract_outcome_data(snps=exposure_dat$SNP, outcomes = "ieu-a-7", access_token = NULL)# Extracting data for 79 SNP(s) from 1 GWAS(s)#save(outcome_dat, file = "./ieu/outcome_data_ieu-a-7.rdata")# 统一数据dat <- harmonise_data(exposure_dat, outcome_dat)# Harmonising Body mass index
相关资讯