温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

bwa软件用法是怎样的

发布时间:2021-11-23 09:19:05 来源:亿速云 阅读:157 作者:柒染 栏目:大数据

bwa软件用法是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

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

  1. BWA-backtrack

  2. BWA-SW

  3. BWA-MEM


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

bwa 的源代码存储在github上,

安装过程如下:

git clone https://github.com/lh4/bwa.git
cd bwa
make

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

./bwa

Program: bwa (alignment via Burrows-Wheeler transformation)
Version: 0.7.17-r1188
Contact: Heng Li <<a href="mailto:lh4@sanger.ac.uk" _href="mailto:lh4@sanger.ac.uk">lh4@sanger.ac.uk</a>>
Usage:   bwa <command> [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 Occ
Note: 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个文件,后缀分别为

  • bwt

  • pac

  • ann

  • amb

  • sa


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

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.sai
bwa samse ref.fa aln_sa.sai reads.fq > aln-se.sam

双端数据用法如下:

bwa aln ref.fa read1.fq > aln1_sa.sai
bwa aln ref.fa read2.fq > aln2_sa.sai
bwa 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.sam
bwa bwasw ref.fa read1.fq read2.fq > aln-pe.sam

3. BWA-MEM` 算法

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

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

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

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

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

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

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

看完上述内容,你们掌握bwa软件用法是怎样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI