美文网首页
2021-05-31Speedseq的安装和使用(转载待测试)

2021-05-31Speedseq的安装和使用(转载待测试)

作者: AsuraPrince | 来源:发表于2021-05-31 11:29 被阅读0次

    题外音:speedseq是一套流程,套用了大量三方软件,但是居然也能发到Nature Methods上!惊讶之余查看了一下代码,非常佩服,简直是教科书一样的模式,太赞了!

    1. speedseq的安装

    1.1 安装前先需安装好python (建议升级到2.7最新版2.7.13),而且需要安装pysam库(需升级到最新版,这里升级到0.11.2版本),如果没有升级,可能在speedseq sv方法中报如下错:

    1.2 再安装root,只有安装了它cnvnator才可以正常安装。

    从官网〔1〕下载root,有Binary distributions但是需要注意下载对应系统的版本(例如我这里下载的Ubuntu 14版本的)。

    wget https://root.cern.ch/download/root_v6.10.08.Linux-ubuntu14-x86_64-gcc4.8.tar.gz

    tar -zxvf root_v6.10.08.Linux-ubuntu14-x86_64-gcc4.8.tar.gz

    # 解压为文件夹root

    再修改\$HOME/.bashrc,添加以下两行

    export PATH=/Path/to/rootdir/bin:$PATHexport LD_LIBRARY_PATH=/Path/to/rootdir/lib:$LD_LIBRARY_PATH

    注意:/Path/to/rootdir即上一步安装root包时压缩后root文件夹的位置,请用绝对路径!

    如果后期运行cnvnator时报错如下,则表明此处LD_LIBRARY_PATH设置有误。

    error while loading shared libraries: libCore.so: cannot open sh

    〔出现这种报错,可查看http://blog.sciencenet.cn/blog-653020-626976.html〕

    再运行以下代码

    cd root. bin/thisroot.sh

    以上安装过程参考[2]

    再按照官网[3]上的步骤下载安装speedseq

    git clone --recursive https://github.com/hall-lab/speedseq

    cd speedseq

    make

    # 经测试gcc 4.4.7版安装会有报错,gcc 4.8.5可正常安装

    1.3 如果想用VEP做注释,还需先手动安装

    正确安装方法如下:

    curl -OL https://github.com/Ensembl/ensembl-tools/archive/release/76.zip

    SPEEDSEQ_DIR=$PWD

    # 注意:这里是speedseq安装目录(也是我的当前目录),以下操作我都在speedseq目录下完成!

    unzip 76.zip

    注意:因为bioperl下载地址改变,按照speedseq官网上安装会报错!一定要修改INSTALL.pl再运行。

    vim ensembl-tools-release-76/scripts/variant_effect_predictor/INSTALL.pl

    将第61行的BIOPERL_URL修改为以下地址,INSTALL.pl中的地址已失效,

    http://www.cpan.org/authors/id/C/CJ/CJFIELDS/BioPerl-1.6.924.tar.gz

    截图如下:

    如果你研究的是人,可以用以下代码在本地建立人的数据库

    perl ensembl-tools-release-76/scripts/variant_effect_predictor/INSTALL.pl \

    -c $SPEEDSEQ_DIR/annotations/vep_cache \

    -a ac -s homo_sapiens -y GRCh38

    # 它会自动下载人的全基因组序列,具体地址如下:ftp://ftp.ensembl.org/pub/release-76/variation/VEP/homo_sapiens_vep_76_GRCh38.tar.gz,大小约3.1G

    cp ensembl-tools-release-76/scripts/variant_effect_predictor/variant_effect_predictor.pl $SPEEDSEQ_DIR/bin

    cp -r Bio $SPEEDSEQ_DIR/bin

    speedseq非常赞的原因之一是它几乎集成了所有需要的三方软件(注:其中有些比较难安装),而且在/Path/to/speedseq/bin/目录下有个speedseq.config,其中记录了所有三方软件可执行程序的路径。这样就可以完全独立了(比方你系统环境变量中有多个samtools,或者多个python,你想用哪一个,就可以直接在这里指定)

    安装完后进行测试,查看是否安装完整,建议将speedseq.config中每一行都测一下,看路径中的程序是否能正常运行。

    我的/Path/to/speedseq/bin/下的程序如下:

    2. speedseq的使用

    像所有的好软件一样,speedseq也提供了example,在/Path/to/speedseq/example/目录下,该目录下有一个data目录(注意:data目录中的reference是bwa index过的)。

    建议按/Path/to/speedseq/bin/run_speedseq.sh中代码一句句运行

    2.1 speedseq align

    注意:speedseq调用bwa-mem后,还生成了discordants.bam和splitters.bam,这两个文件是lumpyexpress必须的(这个已整合在speedseq中),那么这两个bam是怎么来的?

    按照lumpy github官网[4]上的描述

    speedseq align -R "@RG\tID:id\tSM:sample\tLB:lib" \

       human_g1k_v37.fasta \

       sample.1.fq \

       sample.2.fq

    注意:使用speedseq align时建议加上-o选项,它指定输出文件(夹)前缀;-t选项,它指定线程数(默认单线程)

    以上等价于

    # Align the data

    bwa mem -R "@RG\tID:id\tSM:sample\tLB:lib" human_g1k_v37.fasta sample.1.fq sample.2.fq | samblaster --excludeDups --addMateTags --maxSplitCount 2 --minNonOverlap 20 | samtools view -S -b - > sample.bam

    # Extract the discordant paired-end alignments.

    samtools view -b -F 1294 sample.bam > sample.discordants.unsorted.bam

    # Extract the split-read alignments

    samtools view -h sample.bam \

       | scripts/extractSplitReads_BwaMem -i stdin \

       | samtools view -Sb - \

       > sample.splitters.unsorted.bam

    # Sort both alignments

    samtools sort sample.discordants.unsorted.bam sample.discordants

    samtools sort sample.splitters.unsorted.bam sample.splitters

    2.2 speedseq var

    这里调用的是freebayes,它的精确度与GATK不相伯仲,具体可能查看speedseq的引文[5]。

    speedseq var除例子中的-o选项(指定输出文件前缀)外,还有以下几个选项值得注意:

    -q 指定最低变异质量值(质量值小于这个值的将认为是不可信结果)

    -A 使用VEP对变异检测结果进行注释,当然前提是安装好了vep,speedseq/bin中variant_effect_predictor.pl可用

    2.3 speedseq的sv方法

    建议加上以下选项

    -g表示使用svtyper对SV breakends进行分型

    -d表示使用CNVnator来计算read深度

    -P 在vcf中输出LUMPY的概率曲线

    参考材料

    [1] https://root.cern.ch/content/release-61008

    [2] http://www.cpp.edu/~pbsiegel/phy499/rootinstall.html

    [3] https://github.com/hall-lab/speedseq

    [4] https://github.com/arq5x/lumpy-sv

    [5] chiang C., Layer RM., Faust GG, et al. SpeedSeq: ultra-fast personal genome analysis and interpretation.Nature Methods. 2015 Oct;12(10):966-968

    转载本文请联系原作者获取授权,同时请注明本文来自卢锐科学网博客。

    链接地址:

    http://blog.sciencenet.cn/blog-2970729-1083082.html

    相关文章

      网友评论

          本文标题:2021-05-31Speedseq的安装和使用(转载待测试)

          本文链接:https://www.haomeiwen.com/subject/dczvsltx.html