使用BLASR对PACBIO数据进行比对

编辑

Blasr简介

编辑

Blasr主要用于将Pacbio测序的reads和参考序列进行匹配。

由于Pacbio测序的reads比较长,同时含有较多的InDel错误和少量的Substitute错误,因此bowtie和bwa都不适用于对其进行比对。而Blasr能较好地进行处理这些问题。

Blasr相关链接

编辑

Blasr安装

编辑

Blasr包含在了 SMRT Analysis software suite中。安装可参考HGAP软件的安装说明。

Blasr的最新版本可以通过bioconda安装。

miniconda安装路径是/opt/biosoft/miniconda3_for_blasr/bin/

export PATH=/opt/biosoft/miniconda3_for_blasr/bin/:$PATH

conda install blasr
conda install bax2bam
conda install bam2fastx

echo 'PATH=$PATH:/opt/biosoft/miniconda3_for_blasr/bin/' >> ~/.bashrc

Blasr的使用

编辑

首先,使用sawriter命令构建参考序列的索引文件,后缀为.sa。

$ sawriter genome.fasta.sa genome.fasta

然后,使用blasr命令进行比对。当然也可以不进行上一步,直接运行blasr命令。常 用的blasr示例:

$ blasr reads.fasta genome.fasta
$ blasr reads.fasta genome.fasta -sa genome.fasta.sa -header -m 5 -nproc 4 -out blasr.out5
$ blasr reads.bax.h5 genome.fasta -sa genome.fasta.sa -maxScore -100 -minMatch 15

Blasr常用参数:

输入文件:
reads.fasta
	输入fasta格式的文件。文件中包含Pacbio测序所得的subreads序列。
reads.bax.h5
	输入HDF5格式的Pacbio测序结果。由于含有测序质量数据,能更加容易检测SNP和InDel,从而提高比对速度。
-sa suffixArrayFile
输入参考序列的索引文件。可以使用sawriter生成。若不提供该文件,则程序会先生成该文件后,再进行比对。若需要以同样的参考序列多次运行blasr,则提供该文件能节约时间。

Reads参数:
-noSplitSubreads (false)
不对adapters序列进行打断,从而得到subreads进行比对。
-useccsdenovo
仅对CCS (circular consensus sequence)数据进行比对,并报告期比对结果。

输出参数:
-bestn n (10)
	输出最优的n个比对结果。
-sam
	输出结果为sam格式。
-out out (terminal)
	设置输出文件路径。默认下输出到标准输出。
-unaligned FILE
	将没有比对的reads输出到文件FILE。
-m TYPE
	如果不输出为SAM格式,则输出为其它文本格式:
	TYPE=0 :类似NCBI blast网页结果的格式,适合人类阅读。
	TYPE=1 :输出有11列的表格结果。默认设置。
	TYPE=2 :输出XML格式结果。
	TYPE=3 :Vulgar format (deprecated)			TYPE=4 :输出有13列的表格结果。
	TYPE=5 :输出有19列的表格结果。
输出格式详细文档:https://github.com/PacificBiosciences/blasr/wiki/Blasr-Output-Format。
-header
	若输出格式为表格格式,则输出一行头部信息,来指明各列的意义。
-minPctldentity p(0)
	仅报告Identity百分比大于该值的比对结果。
-maxScore m (0)
	仅报告分值低于此值的比对结果。分值是越小越好。
-minReadLength 1 (50)
	略过长度低于此值的reads。
-minSubreadLength 1 (0)
	不对长度低于此值的subreads进行比对。

比对参数:
-minMatch m (12)
	设定最小种子序列长度。此值越大,运行速度越快,但匹配率会降低。
-nCandidates n (10)
	设置最佳比对结果数目。该值越大,则比对速度越慢。

并行化参数:	.
-nproc N (1)
设置运行的线程数。
-start S (0)
从第S个read开始进行比对。
-stride S (1)
每S个read则对1个read进行比对。
-subsample (0)
随机选取此比例的「eads进行比对。