当前位置 : 主页 > 编程语言 > java >

LDSC分析实战

来源:互联网 收集:自由互联 发布时间:2022-06-23
通过对单个表型的GWAS分析结果进行连锁不平衡回归分析,可以鉴定是否存在混淆因素,同时估计遗传力的大小;对于多个不同表型的GWAS分析结果进行分析,则可以计算表型间的遗传相

通过对单个表型的GWAS分析结果进行连锁不平衡回归分析,可以鉴定是否存在混淆因素,同时估计遗传力的大小;对于多个不同表型的GWAS分析结果进行分析,则可以计算表型间的遗传相似度。

通过​​ldsc​​这款软件,可以方便地进行LDSC分析,源代码保存在github上,网址如下

​​https://github.com/bulik/ldsc​​

采用了​​conda​​来确保软件独立的安装环境,安装过程如下

git clone https://github.com/bulik/ldsc.git
cd ldsc
conda env create --file environment.yml
source activate ldsc

通过官网的​​wiki​​, 可以快速的掌握其用法,基本用法如下

1.  计算ld score

根据原始的分型结果,计算LD score, 输入数据为plink的二进制格式,代码如下

python ldsc.py --bfile 22 --l2 --ld-wind-cm 1 --out 22

​​bfile​​​参数指定输入的plink二进制文件,​​l2​​​参数表示计算LD score值,​​ld-wind-cm​​​参数指定计算LD的窗口大小,单位为1cM, ​​out​​参数指定输出文件的前缀。

运行成功后,LD score值保存在后缀为​​l2.ldscore.gz​​的文件中, 内容如下

LDSC分析实战_数据

记录了每一个SNP位点的LD score值。值得注意的是,在计算LD score值时,每条染色体要分开计算。

2. 进行LDSC分析

第一步我们得到了LD score值,进行LDSC分析,我们还需要GWAS分析结果。该软件制定了一种后缀为​​sumstats​​的格式,用来存储GWAS分析结果,要求有以下5列

  • SNP
  • N
  • Z
  • P
  • A1
  • A2
  • ​​SNP​​​表示SNP ID, 比如rs号;​​N​​​表示样本个数;​​Z​​​表示SNP对表型的效应值,beta, OR, z-score等等; ​​P​​​表示pvalue;​​A1​​​表示突变的Allele, ​​A2​​表示参照的Allele。

    该软件自带了脚本来格式化GWAS结果,生成​​sumstats​​格式的文件,用法如下

    python munge_sumstats.py \
    --sumstats gwas.txt \
    --N 2000 \
    --out test

    格式转换之后,就可以进行LDSC分析了,用法如下

    python ldsc.py \
    --h2 test.sumstats.gz \
    --ref-ld-chr ld_score_chr/ \
    --w-ld-chr ld_score_chr/ \
    --out test_h2

    ​​h2​​​参数表示进行回归分析,估算遗传力;​​ref-ld-chr​​​参数指定ld score值对应的目录,该目录下每条染色体的LD score为一个文件;​​w-ld-chr​​​指定回归分析中每个SNP位点的权重,因为算法对这个权重不敏感,和​​ref-ld-chr​​​保持一致即可,​​out​​参数指定输出文件的前缀。

    在后缀为​​log​​的文件中保存了回归分析的截距以及遗传力,该软件同时还可以计算多个表型的遗传相似度,更多用法请参考官方文档。

    ·end·


    LDSC分析实战_数据_02

    生物信息入门

    只差这一个

    公众号



    上一篇:LDSC:连锁不平衡回归分析
    下一篇:没有了
    网友评论