WGS分析笔记(6)—— call CNV 和一些其他

  • CNVs(copy number variations)是除了SNVs、INDELs之外另一种可能导致孟德尔遗传疾病的变异类型,指的是大片段(1kb到几个Mb)的碱基出现拷贝数的变异(del、dup等)。

  • 目前常用的关于CNVs的数据库有DGV、DECIPHER等,以下链接可供参考。

    • 健康人群 CNV: Genomic Variants www.projects.tcag.ca/variation
    • 神经发育异常的患者 CNVs: DECIPHER www.sanger.ac.uk/PostGenomic/decipher/
    • 染色体异常的患者 CNVs: www.ukcad.org.uk/cocoon/ukcad、www.isca.genetics.emory.edu/
    • 染色体非平衡变异的患者 CNVs: www.ecaruca.net
  • 目前临床上对于CNVs的检测一般有CMA、MLPA、CNV-se、aCGH等技术,但是对于WES、WGS的数据也可以使用软件进行call CNVs。

  • 目前有很多进行call CNVs的软件,本文主要记录cnvnator的安装和使用。

  • cnvnator相关文章发表在2011年的《Genome research》上,而相关的软件也挂在了github上,网址如下:https://github.com/abyzovlab/CNVnator

  • cnvnator最大的一个缺点就是安装十分不便,和其他软件相比,这基本上是最被大家吐槽的一点,其次是运行所占内存也是较大的。

  • 当然你可以选择现成的docker使用

    $ docker pull diploid/cnvnator
    
  • 我这里记录并分享一下我的使用经历包括安装经历。

  • 首先是安装

    # 笔者是作为管理员在Root的权限下安装的,可以在个人用户下安装
    # 首先是root的安装,root可以理解为一个软件,也是cnvnator所依赖的
    $ git clone https://github.com/root-project/root.git
    $ mkdir build
    $ cd build
    $ cmake ../root
    $ make -j 4
    $ source bin/thisroot.sh
    # 这里提醒一下,笔者安装过多次root,各种版本的,新的、旧的,无一都失败了,只有上述这个成功了
    # 接下来就是CNVnator的安装,
    $ git clone https://github.com/abyzovlab/CNVnator.git
    $ cd CNVnator
    # 此处的用你的samtools安装位置在CNVnator目录下建立软链接
    $ ln -s /your/path/of/samtools-1.9/ samtools
    # 安装依赖包yeppp
    $ mkdir yeppp && cd yeppp
    $ wget http://bitbucket.org/MDukhan/yeppp/downloads/yeppp-1.0.0.tar.bz2
    $ tar xjf yeppp-1.0.0.tar.bz2
    $ make clean
    $ make LIBS="-lcrypto"
    # 此处将root软件加入变量中
    $ vim .bashrc
    加入:export LD_LIBRARY_PATH=/your/path/of/root/build/lib:$LD_LIBRARY_PATH
    $ source .bashrc
    # 到这里就安装完了,你也可以建立一个软链接把cnvnator链接到bin目录下,这样就可以直接用cnvnator作为命令
    
  • 可以看到安装还是很麻烦的,笔者也是安装了N次才成功,都快崩溃的那种。

  • 接下来是使用记录,使用还是很方便的,可以安装github的说明一步一步来,没有什么太难的地方,这里稍微记录一下并介绍个别参数。

  • 以我自己的数据为例,我的是生殖细胞系的WGS数据,输入文件是已经比对完的bam文件。

    $ cnvnator -root sample.root -tree /your/path/of/bam
    $ cnvnator -root sample.root -his 100 -d /your/path/of/hg19
    $ cnvnator -root sample.root -stat 100
    $ cnvnator -root sample.root -partition 100
    $ cnvnator -root sample.root -call 100 > sample.cnvnator
    $ awk '{ print $2 } END { print "exit" }' sample.cnvnator | cnvnator -root sample.root -genotype 100 > sample.gt
    $ /your/path/of/CNVnator/cnvnator2VCF.pl -prefix sample -reference hg19 sample.cnvnator /your/path/of/hg19 > sample.vcf
    
  • 上面就是常规步骤了,介绍几个点:

    • 首先是 -his 参数的值,也就是bin_size的值,这个可以根据CNVnator作者的建议,根据测序深度的不同进行调整:100X: 30;20-30X: 100;4-6X: 500;再低就1000
    • 其次是 -d 参数,关于这个参数,官网有两种用法:
      1. 如果使用 -d 那就后面接参考基因组所在目录,作者自己是在 hg19 下有各个不同染色体的fasta文件,虽然按照说明是只要目录下有参考基因组就行了。这里笔者一开始目录中只有合并后的hg19的文件,发现下面的步骤报错,后来就重新下载hg19文件,解压后没有合并,运行正常。
      2. 如果使用 -fasta 参数就在后面跟参考基因组的压缩文件,笔者是把 hg19.fa 压缩成了 hg19.fa.gz ,但是后面还是报错了
    • 第六句awk那一句可以不运行,主要是看genotype,不影响最后一步转换为vcf文件
  • 到这一步其实也就差不多了,那么下面是关于CNVs数据的一些简单处理方式和意见的记录,这一块笔者也没有仔细去研究,如果有需要可以单独交流。

  • 关于CNV结果的注释,这里参考annovar注释:

    $ perl convert2annovar.pl -format vcf4old sample.vcf > sample.avinput
    $ perl table_annovar.pl W001.avinput /your/path/of/annovar/humandb/ --buildver hg19 -remove -out sample -protocol refGene,cytoBand,omim201806,gwasCatalog,CCRS,phastConsElements100way,phastConsElements46way,phastConsElements46wayPlacental,phastConsElements46wayPrimates,tfbsConsSites,rmsk,dgvMerged,HIP,Constraint -operation g,r,r,r,r,r,r,r,r,r,r,r,r,r -nastring . --thread 12
    
  • 其实对于 CNVs 的注释和筛选,所能使用的数据库并不像 SNVs 那么多,所幸的是CNVs的结果也没那么多。

  • 上面注释所涉及的数据库大多数能在annovar中直接下载,除了omim201806、CCRS、HIP、Constraint。

    • OMIM的数据可以在OMIM官网通过申请下载,这里不方便挂出来,不过笔者最近一次申请都过去几个月了,OMIM还是没有把链接发过来。

    • CCRS的数据可以在笔者之前的文章,关于注释的那一篇中下载并修改格式,但是用在CNVs中参考价值可能不大,可自行查阅。

    • HIP和Constraint的数据来源于DECIPHER,可以作为参考,下面记录一下如何下载并转换格式。

      # DECIPHER数据库提供了在线的可视化的检索方式,可以查看相关变异的很多信息,包括表型、致病性等,这些信息都是临床或科研单位上传的。其中DECIPHER可供下载的数据包括以下三种
      # Haploinsufficiency Predictions:
      #    Updated predictions of haploinsufficiency as described by Huang et al. (2010, PLoS Genetics). Available as a Bed file for download from the link above.
      $ wget https://decipher.sanger.ac.uk/files/downloads/HI_Predictions_Version3.bed.gz
      # Population Copy-Number Variation Frequencies
      #    Common copy-number variants and their frequencies, as used and displayed in DECIPHER.
      $ wget https://decipher.sanger.ac.uk/files/downloads/population_cnv.txt.gz
      # Development Disorder Genotype – Phenotype Database (DDG2P) 
      #    a curated list of genes reported to be associated with developmental disorders, compiled by clinicians as part of the DDD study to facilitate clinical feedback of likely causal variants. Please note: This file is maintained by the European Bioinformatics Institute. Its contents may differ from DECIPHER due to different update cycles.
      $ wget http://www.ebi.ac.uk/gene2phenotype/downloads/DDG2P.csv.gz
      # 上面是下载了三个数据库,当然下面只用到了两个,还有一个频率数据库笔者也不知道怎么去注释和使用比较好
      # 上述三个数据库直接用gunzip去解压就行
      # pLI:
          $ awk -F "\t" '{print 0"\t"$3"\t"$5"\t"$6"\t"$20}' Constraint.txt > hg19_Constraint.txt
          $ sed -i '1d' hg19_Constraint.txt
      # HIP:
          $ sed -i '1d' HI_Predictions_Version3.bed 
          $ bedtools sort -i HI_Predictions_Version3.bed > HIP.txt
          $ awk -F "\t" '{print 0"\t"$1"\t"$2"\t"$3"\t"$4}' HIP.txt > hg19_HIP.txt
      
      • 最后记得把两个数据库放到 humandb 目录下。

      • DECIPHER有对这两个数值进行介绍

        • HIP,参考paper
      HI.png
      • pLI,参考paper
      pLI
  • 除此之外,对于CNVs的研究也可以考虑从trio样本出发。考虑思路和snv类似,就是从遗传模式考虑,比如患者父母正常的情况下,可以寻找de novo、AR类型的变异。还有就是可以考虑将CNV的数据结合SNV/INDEL一起分析,主要就是CNV可能与SNV/INDEL构成复合杂合等情况。当然这些都是一些思路。


    水平有限,要是存在什么错误请指出,可发送邮件至[email protected]!请大家多多批评指正,相互交流,共同成长,谢谢!!!

你可能感兴趣的:(WGS分析笔记(6)—— call CNV 和一些其他)