Redian新闻
>
超级好用!这个R包在GWAS分析中常见,实用!好学!

超级好用!这个R包在GWAS分析中常见,实用!好学!

公众号新闻

Hi,大家好,我是晨曦

今天这期推文依旧是孟德尔随机化系列,上一期推文我们系统的学习了如何获取数据,包括通过R包直接获得以及下载后本地导入到R中并整理成需要的形式,两种方式
如果各位小伙伴没有看上一期的推文,那么需要各位小伙伴补下课哦~
当孟德尔遇上GWAS。。。
然后我们接下来开始今天的内容,来对孟德尔随机化分析所需要的工具进行一个比较全面的总结,以及挑选一下我们比较喜欢的R包进行重点的讲解
那么,我们开始吧

一、R包介绍

首先第一个R包自然不必多说,就是我们的TwoSampleMR包
先对这个R包的优点进行概述:
1.TwoSampleMR包本身其实就是一个分析流程,可以这么说,这个R包一个就可以完成MR分析的基本所有步骤!
2.TwoSampleMR包本身链接了GWAS数据库,而且这个GWAS数据库应该算是质量很高的数据库了
3.我们在使用TwoSampleMR包的时候,可以通过把自己的数据转换成R包需要的形式然后使用设计好的流程
注意:这个包其实就是我们后续主要进行MR分析的R包,我们先把与MR分析的R包介绍完,然后再重点解析一下这个R包
那么,第二个MR分析的R包我们介绍——MendelianRandomization包
这个R包笔者用的不是很多,所以也是在写这篇推文的时候去使用了一下这个R包,但是不知道是先入为主的思想还是R包本身的问题,笔者在使用这个R包的时候感觉到有一丢丢别扭,那么下面说一下笔者对于这个R包的一些感想:
1.这个R包本身也是链接数据库的,但是笔者在更喜欢TwoSampleMR包链接的数据库(可能是因为看上去比较直接
2.MendelianRandomization包拥有的统计学方法是要比TwoSampleMR包丰富的,但是笔者在进行一些MR分析的时候,用TwoSampleMR包就可以基本解决问题,也有可能是笔者并没有进行完整的MR分析的缘故,当然最好是两个R包都进行学习,然后互为补充,那么后面也会更新相关R包的教程
注意:这里笔者建议学习MR分析推荐先学习TwoSampleMR包,然后再学习MendelianRandomization包
那么,我们将在后续推文着重介绍这两个R包的使用方法,我们先从TwoSampleMR包开始

二、代码实战

以下内容翻译自官方文档:Introduction • TwoSampleMR (mrcieu.github.io)
MR分析的主要流程如下:
1.读取暴露因素的GWAS数据
2.选择合适的工具变量(如果有必要需要进行clumping)
3.读取终点结局的GWAS数据,并对暴露因素的GWAS数据取交集SNP
4.对暴露因素结局的GWAS数据进行格式统一
5.采用标准的MR分析流程
6.可视化
以上图片转载自:孟德尔随机化系列之二:两样本MR – TwoSampleMR – GWASLab – GWAS实验室
#准备工作library(TwoSampleMR)
#读取数据函数read_exposure_data
我们首先需要知道的是read_exposure_data函数,用来读取我们的暴露数据,需要提供至少下面的信息


SNP- rs ID

beta - The effect size. If the trait is binary then log(OR) should be used

se - The standard error of the effect size

effect_allele - The allele of the SNP which has the effect marked in beta



当然还有一些其它的信息也可以选择性的提供:


other_allele - The non-effect allele

eaf - The effect allele frequency

Phenotype - The name of the phenotype for which the SNP has an effect



然后读取函数的书写,我们可以参考下面的样子
bmi2_file <- system.file("extdata/bmi.csv", package = "TwoSampleMR")bmi_exp_dat <- read_exposure_data( filename = bmi2_file, sep = ",", snp_col = "rsid", beta_col = "effect", se_col = "SE", effect_allele_col = "a1", other_allele_col = "a2", eaf_col = "a1_freq", pval_col = "p-value", units_col = "Units", gene_col = "Gene", samplesize_col = "n")
然后在读取完数据以后,我们就可以开始常规的分析,也就是以下代码的流程
bmi_exp_dat <- clump_data(bmi_exp_dat,clump_r2=0.01 ,pop = "EUR")#去除连锁不平衡,默认步骤,可以直接执行chd_out_dat <- extract_outcome_data( snps = bmi_exp_dat$SNP, outcomes = 'ieu-a-7')#提取结局变量dat <- harmonise_data( exposure_dat = bmi_exp_dat, outcome_dat = chd_out_dat)#保持数据之间的统一
一般来说,这上面的每一个函数都会有一些参数可以供我们选择,这里绝大多数情况是需要太多变动的,我们只需要查看帮助文档后,把里面一些相关的参数写在我们的文章里就可以
比如说会有小伙伴问如何去除连锁不平衡,用的是哪些变量来衡量的,其实函数内的参数都自动帮我们做了,查看帮助文档即可
然后后续的流程就是执行一些标准的操作,包括一些已经制定好的分析流程
res <- mr(dat)#查看相关统计学方法#mr_method_list()#obj  name  PubmedID  Description  use_by_default  heterogeneity_test#<chr>  <chr>  <chr>  <chr>  <lgl>  <lgl>#mr_wald_ratio  Wald ratio      TRUE  FALSE#mr_two_sample_ml  Maximum likelihood      FALSE  TRUE#mr_egger_regression  MR Egger  26050253    TRUE  TRUE#mr_egger_regression_bootstrap  MR Egger (bootstrap)  26050253    FALSE  FALSE#mr_simple_median  Simple median      FALSE  FALSE#mr_weighted_median  Weighted median      TRUE  FALSE#mr_penalised_weighted_median  Penalised weighted median      FALSE  FALSE#mr_ivw  Inverse variance weighted      TRUE  TRUE#mr_ivw_radial  IVW radial      FALSE  TRUE#mr_ivw_mre  Inverse variance weighted (multiplicative random effects)      FALSE  #FALSE#mr_ivw_fe  Inverse variance weighted (fixed effects)      FALSE  FALSE#mr_simple_mode  Simple mode      TRUE  FALSE#mr_weighted_mode  Weighted mode      TRUE  FALSE#mr_weighted_mode_nome  Weighted mode (NOME)      FALSE  FALSE#mr_simple_mode_nome  Simple mode (NOME)      FALSE  FALSE#mr_raps  Robust adjusted profile score (RAPS)      FALSE  FALSE#mr_sign  Sign concordance test    Tests for concordance of signs between exposure #and outcome  FALSE  FALSE#mr_uwr  Unweighted regression    Doesn't use any weights  FALSE  TRU
那么本期关于这个R包的宏观框架就给大家介绍到这里~
相信肯定还有很多小伙伴觉得这个流程这么简单,那么MR分析是不是就没有什么门槛呢?
其实笔者最近做了两个MR分析的流程,发现MR分析有几个不太好做的点:
1.数据本身不是特别容易获得心仪的数据,尽管数据库有很多,但是有些数据库下载麻烦,整理数据麻烦,网速慢等等
2.找到好的idea,但是工具变量和结局变量取交集,SNP就一两个,那么显然也无法进行后续的分析
个人感觉大多数小伙伴在后续的分析都会遇到上述这两个问题,但是这两个问题其实都无法很好的解决,只能通过不断的修正方向来弥补
那么既然宏观讲解完毕,那么下一期就会开始进行MR分析中统计学方法的一些介绍,其实就是告诉各位小伙伴,什么时候应该写什么方法,因为如果直接运行代码得到的结果也是类似,因为MR分析的代码真的很简洁了~
那么,本期推文到这里就结束啦~
我是晨曦,我们下期再见
参考教程:
1.孟德尔随机化系列之二:两样本MR - TwoSampleMR - 知乎 (zhihu.com)
2.Exposure data • TwoSampleMR (mrcieu.github.io)

孟德尔随机化系列往期回顾:

01 当孟德尔遇上生信。。。

02 发文新思路!6+SCI教程,手把手教你孟德尔随机化分析!

03 当孟德尔遇上GWAS。。。


END

撰文丨晨   曦
排版丨三叶虫
编辑丨三叶虫

欢迎大家关注解螺旋生信频道-挑圈联靠公号~

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
注意!这种生活中常见的东西,每年杀死4000澳洲人!三分之一澳人家里有!5000亿低度酒市场,下一个RIO何时出现?|品牌出鞘快评:“兵无常势,水无常形 ;能因敌变化而取胜者,谓之神。” -- 乌军赫尔松大反攻翻开激动人心的新篇章加上这个R包!让你的单细胞文章更高级!好!好!好!纽约新法!州长签的这条法律太棒了!写给新手:基金投资中常见的三个误区这4种疾病竟然传男不传女?第1种最常见,生男孩的家庭要小心了!这几天的晚餐【夏日风情】07,火车纵横米粒间和海军学院的新兵蛋子比Grammarly好用!这个神器治好了留学生的论文内耗AOSP合并首个RISC-V架构移植相关的代码补丁拼多多正式登陆美国,看Google Analytics分析如何助其一臂之力跟领导讲话的3个超实用话术锦囊,好用!体检能够发现,这种癌症在中年人中常见,你还不重视体检吗?Redis分布式锁真的安全吗?寻找”猫主“的启事法拉利设计师神作!好用又好看的“小球锅”,轻松解锁各种美食,懒人忙人都爱用Nim 2.0发布首个RC,兼容Nim 1巴黎凡尔赛游记 (三)不愧是全世界女人共同的梦想!好用!确实很好用!100块的快乐回来了!好用到出乎意料都在这一场!纽约“假货一条街”:Dior包原价$3500,这里卖$45新课上线 | 上市30个月销售额超73亿元,这套超级文案方法论太实用!真的好用!这些值得一买再买的衣物护理小神器,可以唤醒你的衣橱!团|换季续命神器!好用不贵,每件都实惠到爆!准妈妈注意:这款孕妇家中常用的设备有重大风险!专家警告别乱用!西雅图看房日记|Mountlake Terrace 超级好看的自住新房这4种病“传男不传女”?第1种最常见,生男孩的要小心了,很有可能会遗传!一日团 | SMEG同款!随身杯2.0升级款!这只小杯子拿在手里很干练很精致,手感超级好!细节无比精致!张维迎大胆研判:用“三驾马车”来分析中国经济,大错特错!5款程序员必备的免费在线画图工具,超级好用!常用的R包整理过节很常见,但却不知道该咋办的问题——吃饱了撑着怎么办?Google:10个Intern,9个Return!12岁以下儿童慎用!这个药被要求修改说明书,很多人家中常备
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。