MAGMA很好的GWAS数据通路富集方法|别样的公共数据库挖掘(内有练习资料)
目前,有很多可以用于GWAS数据分析的软件和方法。比如说GSA-SNP,FORGE,MRPEA,INRICH,DGAT,ALIGATOR, MAGENTA, Set screen test method等等。当然,它们各有自己的优势和缺陷。大家可以根据自己的需要自行选择合适的。
这里我们和大家分享一个最近Nature, Nature Genetics, Nature Neuroscience等大文章中常用的分析软件MAGMA。这个软件的英文介绍是MAGMA is a tool for gene analysis and generalized gene-set analysis of GWAS data. It can be used to analyses both raw genotype data as well as summary SNP p-values from a previous GWAS or meta-analysis. 即此软件既可以分析基因水平又可以分析生物通路水平,既可以分析GWAS的原始数据又可以分析GWAS summary数据。是一个功能十分强大,而操作又很方便的软件。我们可以从官网上直接免费下载:https://ctg.cncr.nl/software/magma。此软件可以基于Linux系统,也可以基于Windows系统。
这个MAGMA软件相关的文章发表在PLoS Computational Biology杂志上:
本推文相关的数据、代码和储存于百度网盘:链接:https://eyun.baidu.com/s/3jHHSfmm 密码:k4lm(或发送后台“练习资料”,即可得链接和密码)
首先,我们需要GWAS数据,如果您有自己感兴趣的GWAS原始数据那是最好,没有的话我们可以从公共数据库内下载已有GWAS summary数据进行分析,发现新的结论。现在我们从https://www.med.unc.edu/pgc/downloads数据库下载吸烟的GWAS数据:tag.evrsmk.tbl.
ever_smoking.results,其内部格式如下:
由于这个TAG GWAS研究于2010年发表在NG上的,所以参考基因组是hg18,比较旧。这里我们利用liftover软件将其升到hg19,再用于后面的分析。代码如下:
1)利用picard工具去改变vcf文件格式:如从hg18版本变到hg19版本:
java -jar picard.jar LiftoverVcf \
I=input.vcf \
O=lifted_over.vcf \
CHAIN=hg18tohg19.chain \
REJECT=rejected_variants.vcf \
R=reference_sequence.fasta
2)利用liftOver软件进行hg18 to hg19转换:
代码pattern: liftOver input.bed hg18ToHg19.over.chain.gz output.bed unlifted.bed
如下:
./liftOver -bedPlus=4 ever_smoking.results hg18ToHg19.over.chain ever_smoking.results.hg19.bed ever_smoking.results_unmapped.txt
接下来我们利用MAGMA软件先将SNP注释到gene上。
###Annotation performed with the following command:
代码pattern:magma --annotate --snp-loc [SNPLOC_FILE] --annotate window=5,1.5 --gene-loc [GENELOC_FILE] --out [ANNOT_PREFIX]
这里SNP的location文件格式是:
#The SNP location file should contain three columns:
前三列是:SNP ID, chromosome, and base pair position (并且没有header)
做出SNP location文件:
gawk '{print $4, $1, $2}' ever_smoking.results.hg19.bed > ever_smoking.results.hg19.location &
sed -i "s/chr//g" ever_smoking.results.hg19.location 去除第一列染色体上的chr
做出SNP对应P值文件:
gawk '{print $4, $5}' ever_smoking.results.hg19.bed > ever_smoking.results_Pval &
1# ever Smoking_TAG数据进行SNP annotation:
nohup ./magma --snp-loc ./GWAS_Summary_SCZ_Smoking/ever_smoking.results.hg19.location --annotate window=35,10 --gene-loc NCBI37.3.gene.loc --out ever_smoking_SNP_Gene_annotation &
2# ever Smoking_TAG数据进行Gene-based analysis:
nohup ./magma --bfile g1000_eur --pval ./GWAS_Summary_SCZ_Smoking/ever_smoking.results_Pval N=69409 --gene-annot ever_smoking_SNP_Gene_annotation.genes.annot --out ever_smoking_SNP_Gene_Analysis_P &
3# ever Smoking_TAG 数据进行Gene-set analysis (or pathway-based analysis)
nohup ./magma --gene-results ever_smoking_SNP_Gene_Analysis_P.genes.raw --model fwer=10000 --set-annot ./Pathways/GO_PANTHER_INGENUITY_KEGG_REACTOME_BIOCARTA_new --out ever_smoking_pathway_P &
总结:通过以上的代码和数据,我们就可以分析GWAS的gene-based or gene-set水平的数据,发现一些新的结果。像这样基于GWAS summary数据的公共数据挖掘有很多文章。主要是找到自己想要解释的科学问题,然后找到数据进行分析。这里我推荐一篇不错的文章可供大家阅读,其是2015年发表在Nature Neuroscience上(PMID: 25599223):Psychiatricgenome-wide association studyanalysesimplicateneuronal, immune and histonepathways. Network and Pathway Analysis Subgroup of Psychiatric Genomics Consortium. Nat Neurosci. 2015 Feb;18(2):199-209.
转自生信草堂
生信草堂
浙大生信博士团队倾力打造的一个科研人员学习交流的公众微信平台。我们致力于科研社区服务,分享最前沿的科技进展,提供生信分析方法,解读经典分析案例,公众数据库的挖掘和临床数据统计分析。在此我们欢迎各位的加入!