這篇文章是對之前啊啊救救我,為何我的QQ圖那么飄(全基因組關聯分析)這篇文章的一個補坑。
LD SCore除了查看顯著SNP位點對表型是否為基因多效性外,還額外補充了怎么計算表型的遺傳度和遺傳相關性。
1 下載、安裝ldsc
git clone https://github.com/bulik/ldsc.git
cd ldsc
2 安裝ldsc依賴的環境
conda env create --file environment.yml
source activate ldsc
3 測試是否安裝成功
如果安裝成功,輸入./ldsc.py -h
代碼會出現如下圖:
輸入./munge_sumstats.py -h
代碼會出現如下圖:
4 准備summary文件summary.txt
summary.txt
為關聯分析的summary數據,包含rs編號、染色體編號、位置、A1(效應等位基因)、A2(無效等位基因)、效應值(OR或BETA)、P值,如下圖所示:
5 將summary文件轉換為ldsc格式
munge_sumstats.py --sumstats summary.txt --N 17115 --out scz --merge-alleles w_hm3.snplist
這里的N指的是研究的樣本數量;
scz是輸出的文件名;
w_hm3.snplist是被納入分析的SNP,包含三列:包含rs編號、位置、A1(效應等位基因)、A2(無效等位基因)# 這一步可有可無#
如果想把所有的SNP位點納入分析,那么采用這個命令:
munge_sumstats.py --sumstats summary.txt --N 17115 --out scz
這一步會生成scz.sumstats.gz的文件;
6 將基因型數據按染色體分開
for q in $(seq 1 22); do plink --bfile file --chr $q --make-bed --out chr$q done
這個步驟會生成22個plink格式文件(bed,bim,fam),每一個文件代表一條染色體。
7 計算LD
for q in $(seq 1 22); do ldsc.py --bfile chr$q --l2 --ld-wind-cm 5 --yes-really --out chr/$q done
生成的文件如下所示:
8 計算回歸截距和遺傳度(the LD Score regression intercept and heritability)
ldsc.py --h2 scz.sumstats.gz --ref-ld-chr chr/ --w-ld-chr chr/ --out scz_h2
scz.sumstats.gz為步驟5生成的文件
chr/ 為步驟7生成的LD文件路徑
scz_h2為回歸截距和遺傳度的輸出文件
9 查看回歸截距(LD Score regression intercept )
less scz_h2.log
輸出文件最底部:
Intercept: 1.0252 (0.0075)
截距為1.0252
關於回歸截距怎么看,請看之前發過的推文:啊啊救救我,為何我的QQ圖那么飄(全基因組關聯分析)
10 查看遺傳度(heritability)
less scz_h2.log
輸出文件最底部:
Total Observed scale h2: 0.7153 (0.0386)
遺傳度為0.7153
11 計算遺傳相關性(genetic correlation)
ldsc.py --rg trait1.sumstats.gz,trait2.sumstats.gz --ref-ld-chr chr/ --w-ld-chr chr/ --out trait1_trait2
trait1.sumstats.gz為表型1的ldsc格式文件;
trait2.sumstats.gz為表型2的ldsc格式文件;
chr/ 為步驟7生成的LD文件路徑
trait1_trait2為表型1和表型2的遺傳相關性輸出文件;
12 查看遺傳相關性(genetic correlation)
less trait1_trait2.log
輸出文件最底部:
Genetic Correlation: 0.6561 (0.0605)
表型1和表型2的遺傳相關性為0.6561