題外音:speedseq是一套流程,套用了大量三方軟件,但是居然也能發(fā)到Nature Methods上!驚訝之余查看了一下代碼,非常佩服,簡直是教科書一樣的模式,太贊了!
1. speedseq的安裝
1.1?安裝前先需安裝好python?(建議升級到2.7最新版2.7.13),而且需要安裝pysam庫(需升級到最新版,這里升級到0.11.2版本),如果沒有升級,可能在speedseq sv方法中報如下錯:

1.2?再安裝root,只有安裝了它cnvnator才可以正常安裝。
從官網(wǎng)〔1〕下載root,有Binary distributions但是需要注意下載對應系統(tǒng)的版本(例如我這里下載的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
〔出現(xiàn)這種報錯,可查看http://blog.sciencenet.cn/blog-653020-626976.html〕
再運行以下代碼
cd root. bin/thisroot.sh
以上安裝過程參考[2]
再按照官網(wǎng)[3]上的步驟下載安裝speedseq
git clone --recursive https://github.com/hall-lab/speedseq
cd speedseq
make
#?經(jīng)測試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官網(wǎng)上安裝會報錯!一定要修改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
截圖如下:

如果你研究的是人,可以用以下代碼在本地建立人的數(shù)據(jù)庫
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,其中記錄了所有三方軟件可執(zhí)行程序的路徑。這樣就可以完全獨立了(比方你系統(tǒng)環(huán)境變量中有多個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調(diào)用bwa-mem后,還生成了discordants.bam和splitters.bam,這兩個文件是lumpyexpress必須的(這個已整合在speedseq中),那么這兩個bam是怎么來的?
按照lumpy github官網(wǎng)[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選項,它指定線程數(shù)(默認單線程)
以上等價于
# 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
這里調(diào)用的是freebayes,它的精確度與GATK不相伯仲,具體可能查看speedseq的引文[5]。
speedseq var除例子中的-o選項(指定輸出文件前綴)外,還有以下幾個選項值得注意:
-q?指定最低變異質(zhì)量值(質(zhì)量值小于這個值的將認為是不可信結果)
-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
轉(zhuǎn)載本文請聯(lián)系原作者獲取授權,同時請注明本文來自盧銳科學網(wǎng)博客。
鏈接地址: