Minimap2是李恒大牛在2018年开发的针对于三代测序数据进行比对的工具,minimap2的优势是速度快,而且听说比对的结果也比较不错,不知道甩samtools几条街;缺点呢,就是耗费内存。
李恒大神实在是太牛了。
minimap2的主要思想是:首先将基因组序列的minimizer存储在哈希表中(minimizer指一段序列内最小哈希值的种子);然后对于每一条待比对序列, 找到待比对序列所有的minimizer,通过哈希表找出其在基因组中的位置, 并利用chaining算法寻找待比对区域;最后将非种子区域用动态规划算法进行比对,得到比对结果。minimap2方法只对最小哈希值的种子进行存储,可有效降低时间复杂度。
01 Minimap2的安装
由于我们学校的管理员很勤奋,所有很多软件都不用我们手动安装。直接module 加载即可。
module load minimap2/v2.17
# 简简单单
看GitHub上,要自行安装的话也不麻烦。参考:https://github.com/lh3/minimap2
git clone https://github.com/lh3/minimap2
cd minimap2 && make
很简单,应该没有什么坑。
02Minimap2的使用
其实看了李恒的GitHub的话,基本上已经很明白了(突然感觉写这个帖子毫无意义),而且get start特别简单。
跑一下我的数据。
minimap2 -ax map-pb azyz.genome.fasta azyz.flnc.fasta > aln.sam
03结果分析
比对结果,和samtools的格式是一样的,这点没有什么好说的。我这里的主要目的是通过全长转录组,来看一下我找到的那个基因(40kb,成精了呢)是否是一个真的基因。
我的做法是在IGV上找一下那个基因,是否有ISO的read达到那么长。那么接下来就是转bam,igv导入数据就完事了。
samtools view -Sb aln.sam > aln.bam
所以本次的笔记就到这里。