一次性计算多个表型的遗传相关性(LDSC, GCTA)

遗传相关的计算之前介绍过几次了,感兴趣的翻之前的推文:

1、利用GCTA工具计算复杂性状/特征(Complex Trait)的遗传相关性(genetic correlation)

2、LD SCore计算基因多效性、遗传度、遗传相关性

之前的两篇推文均有一个小局限,就是针对多个表型间的遗传相关性计算没有介绍。

因此,本次推文是作为一个补充。

一、LDSC

对于LDSC,多表型间的遗传相关性计算很简单,假设存在trait1、trait2、trait3、trait4四个表型,其对应的sumstats格式文件为:
trait1.sumstats.gz,trait2.sumstats.gz,trait3.sumstats.gz,trait4.sumstats.gz

(sumstats格式文件不了解?见推文LD SCore计算基因多效性、遗传度、遗传相关性

现在想要计算trait1、trait2、trait3、trait4四个表型两两之间的遗传相关性,则直接输入命令:

for i in $(seq 0 4); do
echo $i
nohup ldsc.py --rg trait${i%}.sumstats.gz,trait1.sumstats.gz,trait2.sumstats.gz,trait3.sumstats.gz,trait4.sumstats.gz --ref-ld-chr chr/ --w-ld-chr chr/ --out --out trait${i%}linearcorr &
done

二、GCTA

GCTA一次只能计算某个表型(例如trait1)与其他所有表型(例如trait2、trait3、trait4)的遗传相关性。

pheno.txt文件的格式如下所示:

先计算trait1与trait2、trait3、trait4的遗传相关性:

for i in $(seq 1 4); do
echo $i
nohup gcta64 --reml-bivar 1 $i --reml-bivar-nocove --grm test --pheno pheno.txt  --reml-bivar-lrt-rg 0 --out trait1_${i%} &
done

--reml-bivar 1 $i #1指的是pheno.txt文件的第一个表型trait1。

$i将被执行4次(见$(seq 1 4)),分别执行的内容是计算trait1和pheno.txt文件的第一个表型(trait1)的遗传相关性、trait1和pheno.txt文件的第二个表型(trait2)的遗传相关性、trait1和trait3的遗传相关性,trait1和trait4的遗传相关性。

--grm test见推文利用GCTA工具计算复杂性状/特征(Complex Trait)的遗传相关性(genetic correlation)

计算trait2与trait1、trait3、trait4的遗传相关性:

for i in $(seq 1 4); do
echo $i
nohup gcta64 --reml-bivar 2 $i --reml-bivar-nocove --grm test --pheno pheno.txt  --reml-bivar-lrt-rg 0 --out trait2_${i%} &
done

其他的以此类推。

其实也可以在for里面再套一个for循环,这样就能一次性计算完所有的表型间的遗传相关性。

posted @ 2020-10-23 20:11  橙子牛奶糖  阅读(3341)  评论(0编辑  收藏  举报