Bowtie 2是一个超快的、内存效率高的工具,用于将测序读数与长参考序列进行比对。它特别擅长将大约50个到100个或1000个字符的读数进行比对,尤其擅长与相对较长的(如哺乳动物)基因组比对。Bowtie 2用FM索引对基因组进行索引,以保持其内存占用小:对于人类基因组,其内存占用通常约为3.2GB。Bowtie 2支持间隙式、局部式和成对端对齐模式。
其中FM index就是就是一个BWT[T],一个checkpoint data,一个简化了的SA(具体参考bowtie里的FM-index简介_stormlovetao的博客-CSDN博客)
如果目的是对齐两个非常大的序列(例如两个基因组),请考虑使用MUMmer。如果目的是与相对较短的参考序列(如细菌基因组)非常灵敏的比对,可以使用Bowtie 2完成,但您可能需要考虑使用NUCmer,BLAT或BLAST等工具。当参考基因组很长时,这些工具可能会非常缓慢,但当参考基因组很短时通常就足够了。
构建index
官方index:
wget ftp://ftp.ccb.jhu.edu/pub/data/bowtie2_indexes/mm10.zip
unzip mm10.zip
rm mm10.zip make_mm10.sh
自建index:
wget --.fna
bowtie2-build --.fna index
比对
bowtie2 [options]* -x <index> {-1 <m1> -2 <m2> | -U <r> | --interleaved <i> | -b <bam>} [-S <sam>]
其中参数:
-x 由bowtie2-build所生成的索引文件的前缀,需要指定路径及其共用文件名
-1 使用trimmomatic质控后与read2配对(paired)的read1。可以为多个文件,并用逗号分开;多个文件必须和 -2 <m2> 中制定的文件一一对应。
-2 使用trimmomatic质控后与read1配对的read2
-U 使用trimmomatic质控后未配对(unpaired)的reads。可以为多个文件,并用逗号分开,测序文件中的reads的长度可以不一样。
-S 所生成的SAM格式的文件前缀。默认是输入到标准输出。
#事例:
#单末端
bowtie2 -x insect -U input.fq
#双末端
bowtie2 -x insect -1 input_1.fq -2 input_2.fq
SAM 文件转为 BAM 文件
$ samtools sort example.sam > example.bam