尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

数据格式来回折腾太费劲?用gwasglue把GWAS下游分析一次打通

数据格式来回折腾太费劲?用gwasglue把GWAS下游分析一次打通 数据格式来回折腾太费劲用gwasglue把GWAS下游分析一次打通【免费下载链接】gwasglueLinking GWAS data to analytical tools in R项目地址: https://gitcode.com/gh_mirrors/gw/gwasglue如果你做过GWAS汇总数据的下游分析大概率经历过这种崩溃瞬间好不容易从数据库里把关联结果拉出来却发现自己手里的数据格式跟共定位工具要的格式对不上好不容易把共定位跑通了想做精细定位又得重新倒腾一遍字段。gwasglue就是为这个痛点而生的R包——它的定位是一根数据管道把能读取GWAS汇总数据的包与能分析这些数据的工具无缝连起来让你把精力留给科学问题而不是格式搬运。一次真实的搬家经历数据转换占了一半工时朋友阿宇最近在做一个课题想看看低密度脂蛋白LDL胆固醇与冠心病是否共享同一个致病基因位点。他手头有两种数据获取方式一是从IEU GWAS数据库在线查询通过ieugwasr包二是下载GWAS VCF文件通过gwasvcf包。听起来很简单对不对真正做起来才发现共定位工具coloc要的是p值、样本量、效应量、等位基因频率等一堆字段且要求两个数据集先按SNP对齐精细定位工具要的是Z分数加LD矩阵孟德尔随机化工具TwoSampleMR又有自己的一套列名规范。阿宇花了一下午写各种dplyr::rename()和merge()最后在半夜发出一声感叹我到底是做科研还是做数据清洗的这就是gwasglue想替你省掉的那部分工时。对症下药一个包统一取数与分析两大环节gwasglue的思路很朴素把数据从哪里来和数据往哪里去解耦。它内置两类转换函数命名规则一目了然gwasvcf_to_*从VCF文件取数转成各分析工具需要的格式ieugwasr_to_*从IEU GWAS数据库取数转成对应格式。目前已经打通的分析方向包括共定位coloc、精细定位finemapr/FINEMAP等、孟德尔随机化TwoSampleMR、可视化gassocplot等。以我实际用的最多的共定位为例完整流程大概只有几行library(gwasglue) # 取两个表型在指定染色体区域的关联结果 # ieu-a-300 LDL胆固醇ieu-a-7 冠心病 out - ieugwasr_to_coloc(ieu-a-300, ieu-a-7, 1:109750000-109900000) # 直接喂给coloc包做共定位分析 coloc::coloc.abf(out[[1]], out[[2]])注意看取数、字段对齐、格式转换全部在ieugwasr_to_coloc这一行里完成了返回的对象就是coloc包可以直接消费的数据结构。不用手动写任何一行重命名代码。三步上手安装、跑通、看到第一张图第一步拿到源码。gwasglue目前处于持续开发阶段可以通过克隆仓库后本地安装git clone https://gitcode.com/gh_mirrors/gw/gwasglue第二步在R里安装。进入仓库目录后用开发工具安装即可devtools::install()它会自动处理gwasvcf、ieugwasr等依赖包。第三步跑一个最小示例。按上面那几行代码跑完共定位后你还能顺手把结果画出来——gwasglue提供了coloc_to_gassocplot把共定位结果转成gassocplot的绘图格式一张上下堆叠、标注基因位置的区域关联图就出来了图中上方是LDL胆固醇与冠心病两个数据集的关联强度-log10 p值点的颜色代表连锁不平衡LD水平底部是SORT1等基因的位置标注。图一出来两个表型是否共享同一个因果信号这个问题就有了直观的答案。新手最容易踩的四个坑根据我和身边同事的实战经验下面几个坑出现频率最高等位基因方向不一致。不同来源的数据效应等位基因的记法可能正好相反ref/alt互换。gwasglue在转换时已尽量做了对齐但如果你用的是自己整理的本地数据建议先用harmonise_against_ref函数对着参考数据集做一遍方向检查再进入下游分析。忘记下载VCF的索引文件。用gwasvcf_to_*系列函数时VCF文件通常需要配套的.tbi索引才能快速按区域查询漏掉会直接报错。不清楚表型是连续型还是病例对照。共定位工具对这两类数据的处理方式不同gwasglue会自动从元信息里判断类型但判断失败时会默认当作连续型处理——如果结果异常可以用type1、type2参数手动指定。缺失的LD参考面板。精细定位需要LD矩阵本地没有参考面板时可以先用IEU数据库自带的API算ieugwasr_to_finemapr里不传bfile参数即可但作者也建议有条件就下载1000基因组参考面板本地算速度更快还不容易把服务器拖垮。进阶玩法从共定位走向一整套分析流水线如果你已经不满足于单个分析gwasglue的模块化设计能让你快速拼出完整流水线。仓库里的R目录下每个分析对应一个文件R/coloc.r管共定位、R/finemapr.r管精细定位、R/TwoSampleMR.r管孟德尔随机化、R/cojo.r管条件分析、R/harmonise.r管数据对齐。想学哪个方向直接打开对应文件看转换函数的实现比读文档还直观。项目自带多个教程vignettes目录下其中《Genetic colocalisation》完整演示了数据库取数和VCF文件取数两种方式的完整对照我强烈建议把这篇当入门必读。MR方向还能用make_TwoSampleMR_dat一步完成从取数、clumping到harmonise的预处理直接产出可以跑孟德尔随机化的数据框。结语把时间还给科学问题工具的价值不在于代码多酷而在于它替你省下了多少不得不做、又毫无科学含量的重复劳动。gwasglue就是这样一个务实的包它不替你下结论但保证你的数据在取数、转换、对齐这条路上少出幺蛾子。如果你最近正打算做共定位、精细定位或孟德尔随机化不妨从克隆仓库、跑通上面那个最小示例开始——当第一张区域图顺利画出来的时候你会明白省下的时间有多值。【免费下载链接】gwasglueLinking GWAS data to analytical tools in R项目地址: https://gitcode.com/gh_mirrors/gw/gwasglue创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表