用BWA进行序列比对
BWA,即Burrows-Wheeler-Alignment Tool。BWA 是一种能够将差异度较小的序列比对到一个较大的参考基因组上的软件包。今天分享的是使用BWA进行序列比对:
BWA包含三种算法:
BWA-bactrack 用于进行illumina reads的比对,最大长度为100bp
BWA-SW 用于long read,支持长度为70bp-1M,同时支持剪切性比对
BWA-MEM最新的算法,比BWA-SW更加快速和准确。
操作步骤
$ tar jxf /opt/software/bwa-0.7.10.tar.bz2 -C /opt/biosoft/
$ cd /opt/biosoft/bwa-0.7.10/
$ make
$ echo 'PATH=
$PATH:/opt/biosoft/bwa-0.7.10' >> ~/.bashrc
$ source ~/.bashrc
$ mkdir -p /opt/bwa
$ cd /opt/bwa
$ ln -s /opt/genome.fasta
$ ln -s /opt/DATA.* ./
$ bwa index genome.fasta -p genome
建立index数据库
$ bwa mem -t 4 genome DATA.1.fastq DATA.2.fastq > DATA.mem.sam
结果为DATA.mem.sam。先用MEM算法,再用SW算法延伸,执行局部比对和剪切性比对,可能出现多个最优比,这对long reads很重要。
$ bwa bwasw -t 4 genome DATA.1.fastq DATA.2.fastq > DATA.bwasw.sam
结果为DATA.bwasw.sam。对输入的第一个文件的所有序列进行比对,假如输入两个文件,则进行paired end 比对,这种模式仅对illumina的short-insert数据进行比对,在paired end 模式下仍会输出剪切性比对结果,但是会标记为not properly paired,有多个位点,则不会写入mate的匹配位置。
$ bwa aln -t 4 genome DATA.1.fastq > DATA.1.sai
$ bwa aln -t 4 genome DATA.2.fastq > DATA.2.sai
$ bwa sampe genome DATA.1.sai DATA.2.sai DATA.1.fastq DATA.2.fastq > DATA.backtrack.sam
结果为DATA.backtrack.sam。经典的bwa使用方式,先使用aln命令将单独的reads比对到参考序列,再使用sampe生成sam文件。