首发于基因学院
生物信息百Jia软件(八):blat

生物信息百Jia软件(八):blat

编者按
blat也是学习生物信息需要掌握的一款工具。blat与blast其实是不同的,虽然都是局部比对工具,但是blat实现了“多对一”的比对,也就是能将不同的外显子定位到同一个基因上。我喜欢blat可以输出多种比对格式结果的模式,默认是psl,但其实可以输出blast同样格式的结果,还有比较容易阅读的axt格式结果。需要注意的是,blat的其实比对坐标与blast不同。

一、功能分类:

局部比对

二、软件官网:

hgwdev.cse.ucsc.edu/~ke

三、软件介绍:

Blat的全称是The BLAST-Like Alignment Tool,可以称为"类BLAST 比对工具",由W.James Kent于2002年开发。当时随着人类基因组计划的进展,把大量基因和ESTs 快速定位到较大的基因组上成为一种迫切的需求。
blast 对于这种比对需求有几个缺陷:
1、速度偏慢;
2、结果难于处理;
3、无发表示出包含内含子的基因定位。
Blat比对软件 就是在这种形势下应运而生了。
另外,相对于blast,blat使用简单,速度更快,而且不需要建库过程,可以输出多种比对格式的比对结果。
blat特别适合将基因、cds重新定位到染色体上,这个在转录组分析中非常有用。在真核生物中,mRNA在加工成熟过程中需要切出内含子,转录本也存在可变剪切,也就是假设一个基因有1234四个外显子,那么最终得到的cds可能是123,也可能是124,这是如果在将测序出来的转录本定位到基因组上,124三个外显子需要分别定位到三个位子,如果是blast就会断成3个比对,而blat却会识别出这是一个比对,存在多个gap,很好了解决了转录本定位到基因组上的问题。

四、下载安装:

unzip blatSuite.36.zip

五、软件使用:

blat的有很多参数。但是大部分默认即可。blat可进行核酸水平的比对,也可以进行氨基酸水平的比对,同时也支持核酸翻译到氨基酸水平的比对。
Blat 的输入文件必须满足fasta 格式,运行时非常简单,不需要进行建库就可以直接比对。
敲blat,然后接目标序列 ,query序列,然后是输出文件名,但是顺序不能写错了。这样就可以开始比对了。
程序正常运行时,会在读完database 中的所有subject 序列时在屏幕输出database的统计结果。



blat的一些重要选项参数。
-noHead 不输出表头信息,这个在进行下一步软件处理时比较方便,如果对格式很熟悉,不输出以可以;
-out 选择输出格式。可以选择lastz的axt格式,maf格式,wublast格式和blast m0 m8和m9格式。
-t

和-q和-prot参数指定比对的类型。blat也可以进行氨基酸比对和核酸在氨基酸水平比对。blast是通过-p指定比对类型,而blat则是通过分别指定query和subject的格式来解决这个问题。-t可以等于dna和prot蛋白质和dnax,-q可以等于dna,rna,prot,dnax和rnax等,如果需要核酸序列文件在氨基酸水平比对,那-t和-q都应该等于dnax,
氨基酸比对时间要慢一些。-prot指定二者都是氨基酸序列。
剩余很多参数都是用来限制比对条件的,例如是否处理N碱基Gap,重复序列,PolyA、比对字长、identity,比分等,可以根据具体比对进行调节。

六、使用案例:

blat ref.fna query.fna  blat.out
blat genome.fna gene.ffn -out=axt blat.out

七、结果解析:

程序默认输出为psl格式的列表结果文件。
Psl
格式的结果包含了详细的比对位置信息,每一列的意义都 在文件开头列出。第1~8列是总体的比对统计,包括精确比对碱基数、错配、query
和subject上的gap个数总长等等;第9~17 列是比对位置信息,包括比对方向、query 和subject
的名字、长度、比对起止位置;18~21 列是显示每一个精确比对的block 的信息,包括blocks
数、每个block的长度和在query、subject上的位置。
对于psl输出结果,需要注意几点。

1、blat 的结果在subject 上允许存在很大的gap(intron 区域),所以同一个结果在query和subjects 上覆盖的区域可能会相差很多,这一点与blast 不同。

2、在基因对基因组的
比对中,block 的个数不能等同于exon 的个数。因为blat 对block的定义是一个没有插入缺失的比对,任何
插入或者缺失的碱基都会使一个block 终止,所以一个exon 很可能是由很多blocks 构成的。因此exon 和intron 的个数
要通过足够大的gap 来判断。

3、psl 结果里面碱基位置的计算是从0 开始的而不是1。

编辑于 2018-05-06 07:29