Minimap2(2.20)使用记录

文章仅是记录自己的学习使用,有错误请指出,我立刻改正!

官方说明:
https://github.com/lh3/minimap2#general
https://lh3.github.io/minimap2/minimap2.html#10
更多说明:
https://www.jianshu.com/p/474ec8754a48
https://www.jianshu.com/p/f67702926928
https://wap.sciencenet.cn/blog-994715-1341509.html

一、Minimap2的安装

#conda安装
conda create -n Minimap2
source activate Minimap2
conda install -c bioconda minimap2
#编译安装
wget https://github.com/lh3/minimap2/archive/refs/tags/v2.20.tar.gz
tar -zxvf minimap2-2.24.tar.gz
cd /minimap2-2.24
make

二、Minimap2的使用

  • Minimap2 是一个通用的序列比对程序,可将 DNA 或 mRNA 序列与大型参考数据库进行比对。
    典型用例包括:
    1、将 PacBio 或 Oxford Nanopore 基因组读数映射到基因组
    2、发现长读(long reads)之间的重叠,错误率高达~15%
    3、PacBio Iso-Seq / Nanopore cDNA / Direct RNA reads与参考基因组的剪接感知比对(long reads)
    4、Illumina的单端或双端reads对齐
    5、组装水平到组装水平的对齐
    6、两个密切相关的物种之间的全基因组比对,差异低于~15%

(一)用法概括

# long sequences against a reference genome
./minimap2 -a test/MT-human.fa test/MT-orang.fa > test.sam
# create an index first and then map
./minimap2 -x map-ont -d MT-human-ont.mmi test/MT-human.fa
./minimap2 -a MT-human-ont.mmi test/MT-orang.fa > test.sam
# use presets (no test data)
./minimap2 -ax map-pb ref.fa pacbio.fq.gz > aln.sam       # PacBio CLR genomic reads
./minimap2 -ax map-ont ref.fa ont.fq.gz > aln.sam         # Oxford Nanopore genomic reads
./minimap2 -ax map-hifi ref.fa pacbio-ccs.fq.gz > aln.sam # PacBio HiFi/CCS genomic reads (v2.19 or later)
./minimap2 -ax asm20 ref.fa pacbio-ccs.fq.gz > aln.sam    # PacBio HiFi/CCS genomic reads (v2.18 or earlier)
./minimap2 -ax sr ref.fa read1.fa read2.fa > aln.sam      # short genomic paired-end reads
./minimap2 -ax splice ref.fa rna-reads.fa > aln.sam       # spliced long reads (strand unknown)
./minimap2 -ax splice -uf -k14 ref.fa reads.fa > aln.sam  # noisy Nanopore Direct RNA-seq
./minimap2 -ax splice:hq -uf ref.fa query.fa > aln.sam    # Final PacBio Iso-seq or traditional cDNA
./minimap2 -ax splice --junc-bed anno.bed12 ref.fa query.fa > aln.sam  # prioritize on annotated junctions
./minimap2 -cx asm5 asm1.fa asm2.fa > aln.paf             # intra-species asm-to-asm alignment
./minimap2 -x ava-pb reads.fa reads.fa > overlaps.paf     # PacBio read overlap
./minimap2 -x ava-ont reads.fa reads.fa > overlaps.paf    # Nanopore read overlap

(二)基础用法

#1、在基础用法中,minimap2 将ref和query作为输入并生成近似映射(mapping),没有基本级别的对齐(base-level alignment),即坐标只是近似的,且输出中没有 CIGAR
minimap2 ref.fa query.fq > approx-mapping.paf
#2、在PAF文件中制造CIGAR的cg标签
minimap2 -c ref.fa query.fq > alignment.paf
#3、以SAM 格式输出对齐
minimap2 -a ref.fa query.fq > alignment.sam
#4、建立索引来进行比对
minimap2 -d ref.mmi ref.fa                     # indexing
minimap2 -a ref.mmi reads.fq > alignment.sam   # alignment

(三)三代长reads的基因组比对

#Map long noisy genomic reads(长噪声读取)
minimap2 -ax map-pb  ref.fa pacbio-reads.fq > aln.sam   # for PacBio CLR reads
minimap2 -ax map-ont ref.fa ont-reads.fq > aln.sam      # for Oxford Nanopore reads
# -a:设置输出为sam格式
#-x:对不同类型数据,设置不同参数

(四)查找长reads之间的重叠

minimap2 -x ava-pb  reads.fq reads.fq > ovlp.paf    # PacBio CLR read overlap
minimap2 -x ava-ont reads.fq reads.fq > ovlp.paf    # Oxford Nanopore read overlap

(五)二代短reads的基因组比对

minimap2 -ax sr ref.fa reads-se.fq > aln.sam           # single-end alignment
minimap2 -ax sr ref.fa read1.fq read2.fq > aln.sam     # paired-end alignment
minimap2 -ax sr ref.fa reads-interleaved.fq > aln.sam  # paired-end alignment
#作者在github介绍说Minimap2不适用于短拼接读取(short spliced reads)

(六)全基因组之间或组装水平的比对

minimap2 -ax asm5 ref.fa asm.fa > aln.sam       # assembly to assembly/ref alignment
#asm5/asm10/asm20:asm到ref映射,用于约0.1/1/5%的序列差异
#对于跨物种全基因组比对,评分系统需要根据序列分歧进行调整

三、Minimap2的输出

(一).paf结果:包括核心的12列字段以及其他

##核心12列字段##
Col Description
1   Query序列ID
2   Query序列长度
3   Query比对开始位置(*based)
4   Query比对结束位置(*based)
5   char,如果query/target是正链关系,'+'表示;负链关系,'-'表示
6   Target序列ID
7   Target序列长度
8   Target比对开始位置
9   Target结束开始位置
10  比对上的碱基数 (matching bases)
11  对齐区域长度(包括gaps)
12  比对质量(0-255)
##其他补充信息##
tp    aln类型:P/primary, S/secondary and I,i/inversion
cm    Number of minimizers on the chain
s1    Chaining score
s2    Chaining score of the best secondary chain
NM    otal number of mismatches and gaps in the alignment
MD    To generate the ref sequence in the alignment(在比对过程中生成参考序列)
AS    DP alignment score
SA    List of other supplementary alignments(其他补充比对列表)
ms    DP score of the max scoring segment in the alignment
nn    Number of ambiguous bases in the alignment(对齐中不明确的碱基数)
ts    Transcript strand (splice mode only)
cg    CIGAR string (only in PAF)
cs    Difference string
dv    Approximate per-base sequence divergence
de    Gap-compressed per-base sequence divergence
rl    Length of query regions harboring repetitive seeds

(二). SAM结果:SAM文件由两部分组成,头部区和主体区,都以tab分列

#头部区:以’@'开始,体现了比对的一些总体信息。比如比对的SAM格式版本,比对的参考序列,比对使用的软件等
#主体区:比对结果,每一个比对结果是一行,有11个主列和一个可选列
列   关键字 描述
1   QNAME   Query序列ID
2   FLAG    Bwise FLAG(表示比对类型:paring,strand,mate strand等),如:0,99,256,2048等
3   RENAME  Target序列ID
4   POS 比对到参考序列上的位置,从1开始计数;未比对上为0
5   MAPQ    比对的质量分数(越高说明比对到参考序列的上的位置越准确)。如果是255,说明该比对值无效。
6   CIGAR   简要比对信息表达式
7   MRNM    下一片段比对上的参考序列编号
8   MPOS    下一片段比对上的位置,如果不可用,此处为0
9   ISIZE   插入片段长度
10  SEQ 和参考序列在同一个链上比对的序列(若比对结果在负义链上,则序列是其反向重复序列,反向互补序列)
11  QUAL    比对序列的质量(ASCII-33=Phred base quality)reads碱基质量值
12  Optional Fields 可选的列以TAG:TYPE:VALUE的形式提供额外的信息

(三)FLAG释义和CIGAR string

1、FLAG释义

1 : 代表这个序列采用的是PE双端测序
2: 代表这个序列和参考序列完全匹配,没有插入缺失
4: 代表这个序列没有mapping到参考序列上
8: 代表这个序列的另一端序列没有比对到参考序列上,比如这条序列是R1,它对应的R2端序列没有比对到参考序列上
16:代表这个序列比对到参考序列的负链上
32 :代表这个序列对应的另一端序列比对到参考序列的负链上
64 : 代表这个序列是R1端序列, read1;
128 : 代表这个序列是R2端序列,read2;
256: 代表这个序列不是主要的比对,一条序列可能比对到参考序列的多个位置,只有一个是首要的比对位置,其他都是次要的
512: 代表这个序列在QC时失败了,被过滤不掉了(# 这个标签不常用)
1024: 代表这个序列是PCR重复序列(#这个标签不常用)
2048: 代表这个序列是补充的比对(#这个标签具体什么意思,没搞清楚,但是不常用)

2、CIGAR string

  • CIGAR string ,简要比对信息表达式(Compact Idiosyncratic Gapped AlignmentReport),其以参考序列为基础,使用数字加字母表示比对结果,比如3S6M1P1I4M,前三个碱基被剪切去除了,然后6个比对上了,然后打开了一个缺口,有一个碱基插入,最后是4个比对上了,是按照顺序的,字母的含义如下:
  • fig1.CIGAR string.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,686评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,668评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,160评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,736评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,847评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,043评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,129评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,872评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,318评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,645评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,777评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,470评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,126评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,861评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,095评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,589评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,687评论 2 351

推荐阅读更多精彩内容