一、bwa比对软件的使用

1、对参考基因组构建索引

bwa index -a bwtsw hg19.fa   #  -a 参数:is[默认] or bwtsw,即bwa构建索引的两种算法,两种算法都是基于BWT的(BWT search while the CIGAR string by Smith-Waterman alignment.)。-a bwtsw对于短的参考序列是不工作的,必须要大于等于10Mb;-a is 不适用于大的参考序列,必须要小于等于2G;

output:hg19.fa.amb、hg19.fa.ann、hg19.fa.bwt、hg19.fa.pac和hg19.fa.sa

2、寻找输入reads文件的SA坐标

对于pair end数据,每个reads文件单独做运算,single end数据就不用说了,只有一个文件。

pair end:

bwa  aln  hg19.fa  read1.fq.gz  -l 30  -k 2  -t 4  -I  > read1.fq.gz.sai   or   bwa  aln  hg19.fa  read1.fq.gz  -l 30  -k 2  -t 4  -I -f read1.fq.gz.sai

bwa  aln  hg19.fa  read2.fq.gz  -l 30  -k 2  -t 4  -I  > read2.fq.gz.sai   or   bwa  aln  hg19.fa  read2.fq.gz  -l 30  -k 2  -t 4  -I -f read2.fq.gz.sai

single end:

bwa  aln  hg19.fa  read.fq.gz  -l 30  -k 2  -t 4  -I  > read.fq.gz.sai       or   bwa  aln  hg19.fa  read.fq.gz  -l 30  -k 2  -t 4  -I  -f  read.fq.gz.sai

主要参数说明:

-o int:允许出现的最大gap数。

-e int:每个gap允许的最大长度。

-d int:不允许在3’端出现大于多少bp的deletion。

-i int:不允许在reads两端出现大于多少bp的indel。

-l int:Read前多少个碱基作为seed,如果设置的seed大于read长度,将无法继续,最好设置在25-35,与-k 2 配合使用。

-k int:在seed中的最大编辑距离,使用默认2,与-l配合使用。

-t int:要使用的线程数。

-R int:此参数只应用于pair end中,当没有出现大于此值的最佳比对结果时,将会降低标准再次进行比对。增加这个值可以提高配对比对的准确率,但是同时会消耗更长的时间,默认是32。

-I int:表示输入的文件格式为Illumina 1.3+数据格式。

-B int:设置标记序列。从5’端开始多少个碱基作为标记序列,当-B为正值时,在比对之前会将每个read的标记序列剪切,并将此标记序列表示在BC SAM 标签里,对于pair end数据,两端的标记序列会被连接。

-b :指定输入格式为bam格式。bwa  aln  hg19.fa  read.bam  > read.fq.gz.sai

3、生成sam格式的比对文件

如果一条read比对到多个位置,会随机选择一种

single end:bwa  samse  hg19.fa  read.fq.gz.sai  read.fq.gz  > read.fq.gz.sam

参数:

-n int:如果reads比对次数超过多少次,就不在XA标签显示。

-r str:定义头文件。‘@RG\tID:foo\tSM:bar’,如果在此步骤不进行头文件定义,在GATK后续分析中还是需要重新增加头文件。

pair end:bwa sampe -a 500 read1.fq.gz.sai read2.fq.gz.sai read1.fq.gz read2.fq.gz > read.sam

参数:

-a int:最大插入片段大小。

-o int:pair end两reads中其中之一所允许配对的最大次数,超过该次数,将被视为single end。降低这个参数,可以加快运算速度,对于少于30bp的read,建议降低-o值。

-r str:定义头文件。同single end。

-n int:每对reads输出到结果中的最多比对数。

4、其他

(1)

bwa mem ref.fa reads.fq > aln-se.sam 单端测序

bwa mem ref.fa read1.fq read2.fq > aln-pe.sam 双端测序

(2)

bwa aln ref.fa short_read.fq > aln_sa.sai

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

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

(3)

bwa bwasw ref.fa long_read.fq > aln.sam

二、sam文件格式说明

1、

XT:A:U/R     Type:Unique/Repeat/N/Mate-sw    # U指第五列比对值>0;R指第五列比对值==0

参考文献:

1、《GATK使用方法详解(包含bwa使用)》http://www.tanboyu.com/gatk-bwa.html

2、《bwa英文操作手册》http://www.chinadmd.com/file/ecaeoaecwzvs3trpxpwtzows_1.html

bwa比对软件的使用以及其结果文件(sam)格式说明的更多相关文章

  1. 软件測试系统文章(文件夹&链接在此)

    前言 我会在此账号上写一系列关于软件測试的文章,故在此置顶软件測试系列文章的文件夹和链接,以方便大家阅读! 文件夹 软件測试系列之入门篇(一) 软件測试系列之了解篇(二) 软件測试系列之黑白盒(三) ...

  2. Atom 编辑器安装 linter-eslint 插件,并配置使其支持 vue 文件中的 js 格式校验

    安装方式有如下几种. 1.最常用的安装方式. # 进入atom插件文件夹 cd ~/.atom/packages/ # git clone 插件源文件 git clone https://github ...

  3. 重构qDebug()<<,使log输出到文件

    重构qDebug()<<,使log输出到文件 #include <QProcessEnvironment> #include <QDateTime> #includ ...

  4. rabbitmq trace 日志的使用以及其疑惑之处

    RabbitMQ 默认日志里只有类似客户端"accpet/close"等信息,对于有异常或者跟踪消息内部结构就比较麻烦了. 不过MQ有个rabbitmq_tracing插件,安装该 ...

  5. css3 transfrom使用以及其martix(矩阵)属性与其它属性的关系

    写法 其属性martix与skew .scale .translate之间的关系   兼容性 :       IE9+ : -ms-transform :  IE9只支持2D转换       fire ...

  6. !!!易控INSPEC组态软件开发小结——-一次工程文件损坏和处理经过

    从加入红橡开始熟悉和使用易控(INSPEC)组态软件,值得赞扬的是INSPEC的开放性和对C#语言的支持,除此之外,便也没有感觉它与其他组态软件有太多优势,有人说INSPEC软件授权比国内其他同类的组 ...

  7. mysql 备份软件 Xtrabackup 的 xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info 文件区别

    今天在操作 innobackupex 的时候,执行 change master to 的时候发现  xtrabackup_binlog_pos_innodb   xtrabackup_binlog_i ...

  8. 使用安捷伦波形编辑软件产生GK101 任意波数据文件的方法(支持手绘)

    软件安装包下载地址: 链接: http://pan.baidu.com/s/1bn8Lmhx 密码: v5xz 一.安捷伦IO套件安装 1.将压缩包解压,首先双击IOLibSuite_16_3_179 ...

  9. win7 摄像头驱动软件找不到,只有sys文件

    有的驱动只有sys文件,但是仍然可以在qq视频等用,只是找不到amcap.exe等可执行文件, 因为没有摄像头软件,下载一个安装上即可

随机推荐

  1. Python课程笔记(九)

    本次课程主要学习了Excel和JSON格式的一些读写操作.课程代码 一.Excel数据读写操作 1.安装模块 pip install xlrd pip install xlwt 网不好可以采用三方库: ...

  2. 第一个只出现一次字符的位置 牛客网 剑指Offer

    第一个只出现一次字符的位置  牛客网 剑指Offer 题目描述 在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 ...

  3. cf2A Winner(implementation)

    题意: N个回合. 每个回合:name score[名为name的这个人得了score分(可负可正)]. 问最后谁的累积分数是最高的.设为M.如果有好几个都得了M,找出这几个人中哪个最早回合累积分数超 ...

  4. HashMap 中的一个“坑”!

    最近公司新来了一个小伙伴,问了磊哥一个比较"奇怪"的问题,这个问题本身的难度并不大,但比较"隐蔽",那究竟是什么问题呢?接下来我们一起来看. ​ 起因 最近公司 ...

  5. Redis去重方法

    目录 1.基于 set 2.基于 bit 3.基于 HyperLogLog 4. 基于bloomfilter 这篇文章主要介绍了Redis实现唯一计数的3种方法分享,本文讲解了基于SET.基于 bit ...

  6. Oracle的主要组件和基本概念

    oracle 简介 oracle(甲骨文)公司 1977年,三人合伙创办(Software Development Laboratories,SDL) 1979年,更名为Relational Soft ...

  7. 开源支持东财自动交易的简单量化交易框架pytrader

    pytrader是基于 easytrader 和 easyquotation 的量化交易框架,支持东方财富自动交易,支持进行策略回测. 开源地址:https://github.com/jadepeng ...

  8. 第六周PTA笔记 括号匹配调整+堆放石子+最大积分+168

    括号匹配调整 如果通过插入" +"和" 1"可以从中得到格式正确的数学表达式,则将带括号的序列称为正确的. 例如,序列 "(())()",& ...

  9. Linux下搭建FFmpeg开发调试环境

    背景 如果你是一个FFmpeg的使用者,那么绝大部分情况下只需要在你的程序中引用FFmpeg的libav*相关的头文件,然后在编译阶段链接相关的库即可.但是如果你想调试FFmpeg内部相关的逻辑,或者 ...

  10. vue自定义指令实例使用(实例说明自定义指令的作用)

    在写vue项目的时候,我们经常需要对后台返回的数据进行大量的渲染操作,其中就包含了大量的对特殊数据的进一步处理,比如说时间戳.图片地址.特殊数据显示等等特殊数据处理改进. 其实遇到这种情况,通过Vue ...