一次性计算多个表型的遗传相关性(LDSC, GCTA)
遗传相关的计算之前介绍过几次了,感兴趣的翻之前的推文:
1、利用GCTA工具计算复杂性状/特征(Complex Trait)的遗传相关性(genetic correlation)
之前的两篇推文均有一个小局限,就是针对多个表型间的遗传相关性计算没有介绍。
因此,本次推文是作为一个补充。
一、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循环,这样就能一次性计算完所有的表型间的遗传相关性。
本文来自博客园,作者:橙子牛奶糖(陈文燕),转载请注明原文链接:https://www.cnblogs.com/chenwenyan/p/13865970.html