最近在看遗传数据与表达结合的东西,介绍一个经典的方法吧,fusion。
Gusev et al. “Integrative approaches for large-scale transcriptome-wide association studies” 2016 Nature Genetics
主要思想:
许多基因变异通过调节基因表达影响复杂的性状,从而改变一个或多个蛋白质的表达水平。此方法就是在没有直接测量表达水平的个体中,来找出其表达与复杂性状显著相关的基因。
我们利用相对较小的一组参考个体,对其基因表达和SNPs进行了相关分析,从而从SNP基因型数据将表达的顺式遗传成分插补到更大的一组表现型个体中。然后,我们将输入的基因表达与性状相关联,进行全转录组关联研究(TWAS),并确定显著的表达-性状关联。用GWAS的summary数据。
- Tutorial here.
————————————————————————————
大概了解了主要思想后,我们就开始吧。
下载软件、解压:
wget https://github.com/gusevlab/fusion_twas/archive/master.zip
unzip master.zip
cd fusion_twas-master
下载1000 Genomes数据,是每条染色体分开的:
wget https://data.broadinstitute.org/alkesgroup/FUSION/LDREF.tar.bz2
tar xjvf LDREF.tar.bz2
下载工具,plink2R library
wget https://github.com/gabraham/plink2R/archive/master.zip
unzip master.zip
进入R,安装需要的包。
R
install.packages('optparse','RColorBrewer')
install.packages('plink2R-master/plink2R/',repos=NULL)
*tips:如果安装报错,就一个一个安,提示缺哪个包就安哪个。
如果用自己的数据计算weight,需要GCTA、plink2这些基础软件,还需要安装以下R包:
install.packages(c('glmnet','methods'))
*tips:如果在装methods报错,类似is a base package这个,说明这个包是基础包,library一下存在就可以啦。
——————————————————————————————
此示例为典型的TWAS分析,根据预先计算好的基因表达权重和疾病GWAS summary数据来估计每个基因与疾病的关系。
将使用PGC精神分裂症的gwas summary数据对GTEx全血数据进行TWAS。
wget https://data.broadinstitute.org/alkesgroup/FUSION/SUM/PGC2.SCZ.sumstats
mkdir WEIGHTS
cd WEIGHTS
wget https://data.broadinstitute.org/alkesgroup/FUSION/WGT/GTEx.Whole_Blood.tar.bz2
tar xjf GTEx.Whole_Blood.tar.bz2
输入文件一:GWAS summary statistics
格式:与计算LD score时格式相同??崭穹指簦瑂np、A1、A2、z是必须的。示例文件长这样。snp必须是rs号,不是的自己转一下,因为后面要跟1000G匹配。
可以用LDSC munge_stats.py把gwas的格式转为我们需要的。
gwas结果全部输入进去,不要卡阈值。
输入文件二:Expression weights
就是我们之前下载的文件
./WEIGHTS/GTEx.Whole_Blood.pos
运行脚本
Rscript FUSION.assoc_test.R \
--sumstats PGC2.SCZ.sumstats \
--weights ./WEIGHTS/GTEx.Whole_Blood.pos \
--weights_dir ./WEIGHTS/ \
--ref_ld_chr ./LDREF/1000G.EUR. \
--chr 22 \
--out PGC2.SCZ.22.dat
结果
生成文件后面的截不下了??纯聪旅娓鞲霰硗返慕樯馨伞?div id="2cccccccc8" class="image-package">