bwa 软件用法简介

网友投稿 1932 2022-11-25

bwa 软件用法简介

bwa 软件用法简介

欢迎关注"生信修炼手册"!

bwa 是一款将序列比对到参考基因组上的软件,包含了以下3种算法

BWA-backtrackBWA-SWBWA-MEM

​​BWA-backtrack​​​适合比对长度不超过100bp的序列;​​BWA-SW​​​和​​BWA-MEM​​​适合于长度为70-1M bp的序列;其中​​BWA-MEM​​​是最新开发的算法,对于高质量的测序数据,其比对的速度更快,精确度更高,对于70-100bp的reads, BWA-MEM算法在比对长度为70-100bp的序列时,效果比BWA-backtrack 算法的效果更好。总而言之,通常情况下,选择​​BWA-MEM​​算法就好。

bwa 的源代码存储在​​github​​上,链接如下

​​clone bwamake

安装好之后,会出现一个名为​​bwa​​的可执行文件,输入下面命令可以查看帮助信息

./bwa

Program: bwa (alignment via Burrows-Wheeler transformation)Version: 0.7.17-r1188Contact: Heng Li <lh3@sanger.ac.uk>Usage: bwa [options]Command: index index sequences in the FASTA format mem BWA-MEM algorithm fastmap identify super-maximal exact matches pemerge merge overlapping paired ends (EXPERIMENTAL) aln gapped/ungapped alignment samse generate alignment (single ended) sampe generate alignment (paired ended) bwasw BWA-SW for long queries shm manage indices in shared memory fa2pac convert FASTA to PAC format pac2bwt generate BWT from PAC pac2bwtgen alternative algorithm for generating BWT bwtupdate update .bwt to the new format bwt2sa generate SA from BWT and OccNote: To use BWA, you need to first index the genome with `bwa index'. There are three alignment algorithms in BWA: `mem', `bwasw', and `aln/samse/sampe'. If you are not sure which to use, try `bwa mem' first. Please `man ./bwa.1' for the manual.

可以看到由很多的子命令构成。

​​bwa​​软件的作用是将序列比对到参考基因组上,在比对之前,首先需要对参考基因组建立索引,命令如下:

bwa  index in.fasta

索引建立好之后,会生成5个文件,后缀分别为

bwtpacannambsa

下面是对小鼠基因组构建索引的示例

bwa index mm10.fasta├── mm10.fasta├── mm10.fasta.amb├── mm10.fasta.ann├── mm10.fasta.bwt├── mm10.fasta.pac└── mm10.fastq.sa

建立好参考基因组之后,就可以进行比对了。不同的比对算法,命令不同。

1. BWA-backtrack 算法

对应的子命令为​​aln/samse/sample​​单端数据用法如下:

bwa aln ref.fa reads.fq > aln_sa.saibwa samse ref.fa aln_sa.sai reads.fq > aln-se.sam

双端数据用法如下:

bwa aln ref.fa read1.fq > aln1_sa.saibwa aln ref.fa read2.fq > aln2_sa.saibwa sampe ref.fa aln_sa1.sai aln_sa2.sai read1.fq read2.fq > aln-pe.sam

2. BWA-SW 算法

对应的子命令为​​bwasw​​, 基本用法如下

bwa bwasw ref.fa reads.fq > aln-se.sambwa bwasw ref.fa read1.fq read2.fq > aln-pe.sam

3. BWA-MEM` 算法

对应的子命令为​​mem​​, 基本用法如下

bwa mem ref.fa reads.fq > aln-se.sambwa mem ref.fa read1.fq read2.fq > aln-pe.sam

对于超长读长的reads,比如PacBio和Nanopore测序仪产生的reads, 用法如下

bwa mem -x pacbio ref.fa reads.fq > aln.sambwa mem -x ont2d ref.fa reads.fq > aln.sam

上述的代码中, ​​ref.fa​​​指的是参考基因组索引的名字,对于上面提供的小鼠的例子而言,参考基因组索引的名字为​​mm10.fasta​​, 注意是不包含后缀的。

默认用法都非常简单,有时还需要对参数进行调整,以​​mem​​子命令为例,常用的参数包括以下几个:

​​-t​​​指定线程数,默认为1,增加线程数,会减少运行时间;​​-p​​​ 忽略第二个输入序列,默认情况下,输入一个序列文件认为是单端测序,输入两个序列文件则是双端测序,加上这个参数后,会忽略第二个输入序列文件,把第一个文件当做单端测序的数据进行比对;​​-Y​​​参数对数据进行​​soft clipping​​​, 当错配或者gap数过多比对不上时,会对序列进行切除,这里的切除并只是在比对时去掉这部分序列,最终输出结果中序列还是存在的,所以称为​​soft clipping​​。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:使用SnpSift filter对VCF文件进行筛选
下一篇:2022年微信音乐小程序推荐
相关文章

 发表评论

暂时没有评论,来抢沙发吧~