那令人困惑的比对工具选择啊~
写在前面的废话
我可能不适合做科研,因为我总是对一些“没有必要”的事斤斤计较~
刚开始接触二代测序时,是跟着Jimmy大神从RNA-seq开始入门的。那时候使用的比对工具是HISAT2。当时也没怎么细想为什么用这个工具,你说用那我就用吧,于是HISAT2就成了目前我最喜欢的比对工具
但是,随着需要处理不同的数据,我发现HISAT2不能满足我的要求了,我似乎需要考虑其他工具了,但我无从下手,不知道什么工具更适合我。于是一场不太考虑生物学意义,只思考工具特点的战斗便拉开了帷幕……
image.png太长不看系列
- tophat调用bowtie,tophat2调用bowtie2
- HISAT2既能做RNA-seq也能做DNA-seq
- STAR是ENCODE官方推荐的RNA-seq比对工具
废话超多系列
虽然每次我都说这是废话超多系列,但我是真心想让你们认真看看这部分的内容。毕竟我能力有限,很难用几句简短的话把我想说的事情搞明白,除非我写文言文……
image.pngDNA-seq&RNA-seq
搜了搜各种帖子,发现大家在对比对工具进行比较时,都喜欢将其分为DNA比对工具(DNA-seq)和RNA比对工具(RNA-seq)。仔细思考你会发现,它们的区别仅在于是否会考虑跨外显子的比对(即:是否会将没有比对上的reads劈开,对劈开后的两部分再次比对)。
随着现在各种seq的出现,我们已经不能简单的根据是比对DNA还是RNA来判断工具的选择,而是要判断reads的比对是否需跨外显子。比如PRO-seq/GRO-seq,它们在建库时捕获的RNA,但是它们并不需要考虑跨外显子的比对。
鬼扯了这么多,简单总结一下各种类型的常用工具都有哪些:
- DNA-seq:bowtie;bowtie2;BWA
- RNA-seq:STAR;HISAT2;Tophat
image.png以上都是我自己用过的,没有用过的对我来说都属于不常用的,因此不在这里比较
bowtie&bowtie2
bowtie出现在上古时期(就是很久远的意思了),那个时候测序行业的发展还不成熟,序列长度普遍在50bp以下,因此bowtie的出现就是为了满足长度在50bp以下的reads的比对。官方称其可以把短的DNA序列(35bp)快速的比对到人类基因组上。
而bowtie2的出现则弥补了bowtie的短板,bowtie2擅长比对50-100bp长的reads,长度甚至长达1000。它适合比对那些比较长的基因组,如哺乳动物基因组。
结论:bowtie和bowtie2,是两个不同类型的比对工具,bowtie2并非是bowtie的升级。尺有所长寸有所短,bowtie适合长度在50b长度以内的reads比对,而bowtie2适合50-100b,甚至更长的reads比对。但是这两个都属DNA-seq比对工具
image.pngTophat和Tophat2
Tophat/Tophat2工具本身不能进行比对,它是通过调用bowtie/bowtie2进行比对的。划重点,bowtie2不是bowtie的升级版,但是Tophat2是Tophat2的升级版。因此Tophat只可以调用bowtie,而Tophat2不仅可以调用bowtie2(默认)还可以更改设置调用bowtie。
Tophat/Tophat2调用bowtie/bowtie2后,会首先使用bowtie/bowtie2对序列进行比对,对于那些没有比对上的,会考虑其跨外显子的可能性,将reads劈开重新比对。
如果你去bowtie/bowtie2/Tophat的官网仔细观察,你会发现,bowtie和bowtie2各自有自己的官网,有专属于自己的介绍。而Tohat就不同了,它只有一个,仅仅是在2012年4月9日Tophat发布了2.0.0版本,宣布支持bowtie2的比对。而我们通常也将支持bowtie2版本的Tophat称之为Tophat2。
此外,如果你够无聊,你在它们的主页上下扒拉扒拉,你会发现无论是bowtie还是bowtie2在2019年仍然是有更新的。但是Tophat到了2016年2月便停止了更新……这是为什么呢?请继续往下看
image.pngHISAT2
Tophat2的原作者们也不知道是出于什么考虑,不再更新Tophat2,转而开发了一个新的比对工具HISAT2,更是推荐人们使用HISAT2,声称其速度更快,内存占用率更小,准确率更高。
此外,HISAT2不仅支持RNA-seq的比对还支持DNA-seq比对,唯一需要做的就是加上一个参数--no-spliced-alignment
。但是就目前来看,大部分人都是使用HISAT2做RNA-seq,没人使用它做DNA-seq
BWA
其实没有太多需要说的,是我最早知道的比对工具,属于DNA-seq比对工具。大部分搞全基因组或者全外的似乎都使用BWA作比对。当时本科时期有门课叫做计算生物学,当时学习BWT算法,还经常把算法名称和比对工具名称搞混。
值得一提的是这个工具是李恒开发的,如果你不知道李恒,你最起码也应该知道SAMtools工具,这东西也是李恒开发的。一个强的可怕的男人……
STAR
最早听到这个工具的名称是在研一时期,的确有点孤陋寡闻。当时以为是一个很小众的野鸡工具,后来发现身边蛮多人用这个工具的,于是就带着好奇心上网搜索它的资料。
不搜不知道,一搜吓一跳。啧啧啧,ENCODE皇家御用的RNA-seq比对工具,真香……
几款RNA-seq工具的比较
可能是因为RNA-seq分析比较大众,因此大部分的比对工具都是利用RNA-seq的效率进行比较。
《Gaining comprehensive biological insight into the transcriptome by performing a broad-spectrum RNA-seq analysis》这篇文章可以称之为史上最全RNA-seq测评。对于RNA-seq的方方面面都进行了比较。因为太全面,反而有点杂乱,因此我只关注了我感兴趣的一些地方。
无论是HISAT2还是STAR,对于Tophat来说都有很大的优势,更何况Toph还不再继续更新,这就更给力我们不再使用它的理由。至于HISAT2,他的junction正确率最高,但是灵敏度相对较低。而STAR灵敏度更高,但是会有许多包含soft-clip的低质量比对。此外,STAR的unique mapping比例最高,它对于双端测序的reads,要么全部比对上,要么全部抛弃,不会像像TopHat和HISAT2一样只比对上某一个reads
最后这篇文章还给了一个它认为比较好的RN-seq组合方式:
- 比对用HISAT2
- reads count方法定量,采用FeatureCounts
- 差异表达选用DESeq2
前一阵的龙星课程针对RNA-seq给出了另一个组合方式:SATR+RSEM,其中STAR既可以比对也可以用于定量(count)
具体选用哪一个组合,看习惯,看眼缘,看心情……