使用长读长测序reads进行基因组组装-miniasm

三代测序因为长读长的特点,在基因组组装方面有明显的优势。今天给大家介绍一款基因组组装软件,miniasm。该软件可用于Pacbio和ONT两个平台的数据组装,分析速度很快。

软件安装

  • minimap2安装

miniasm软件组装时,需要从比对结果中获取reads之间的相对位置以及overlap情况。相对于二代测序,三代reads较长,bwa等软件效率太低,这里使用minimap2进行比对,速度很快。

$ git clone https://github.com/lh3/minimap2 && (cd minimap2 && make)
  • miniasm安装

组装软件在github可以获取源码,直接安装即可

$ git clone https://github.com/lh3/miniasm  && (cd miniasm  && make)

基因组组装

数据过滤

三代测序的原始数据错误率比较高,需要先进性数据的矫正,不同平台有不同的数据格式,对应不同的软件,可以自行搜索进行过滤。

数据比对

使用minimap2软件对fq数据比对。因为要获得reads之间的overlap关系,比对时只需要进行fq自身数据间的比对即可。

$ minimap2 -x ava-pb -t8 pb-reads.fq pb-reads.fq > pb-reads.minimap2.out

其中-x表明数据类型及组装方法,最常用的包含4中,其中map-pb/map-ont表示Pacbio和ONT平台数据与参考基因组进行比对,ava-pb/ava-ont表示Pacibo和ONT平台fq数据自身数据间的比对;-t为线程数

$ head -5 pb-reads.minimap2.out
read1   204 35  204 -   read4   419 144 313 119 169 0   tp:A:S  cm:i:1s1:i:119  dv:f:0.0042 rl:i:181
read2   204 35  204 +   read5   414 64  232 119 169 0   tp:A:S  cm:i:1s1:i:119  dv:f:0.0042 rl:i:181
read3   204 35  204 +   read6   231 36  204 119 169 0   tp:A:S  cm:i:1s1:i:119  dv:f:0.0021 rl:i:181

以上是minimap2软件的输出结果。前12列为比对数据统计结果,各列依次是query名、query长度、query起始位置、query终止位置、链方向、target名、target长度、target起始位置、target终止位置、比对时match碱基数、比对碱基数(包括gap等)、比对质量。后面的各列与bam文件中信息类似,每个tag对应不同的统计结果,具体可查询官方文档。

基因组组装

使用miniasm主程序对数据进行组装,要求输入fastq以及minimap2比对结果,示例如下。

$ miniasm -1 -2 -m 50 -s 1000 -c 5 -f ../../X5.HB5.extract.fq X5.extract.minimap2.sam > X5.all.extractsam.miniasm.out.new

上述参数中,-1和-2表示数据在组装时跳过对reads的筛选,直接使用(正常情况下默认没有这两个参数,也没有必要特意加上),-m为最小的匹配长度,-s为最小的span长度,-c为测序深度。

对于基因组组装而言,最重要的几个参数基本就是这些,需要给定overlap长度,span长度以及测序深度,有的软件还需要添加输出最小的contigs长度等。在组装之前,应该对自己的数据有一个基本的认识,比如测序数据中reads的长度分布范围、测序深度等信息,方便组装不理想时调整参数。

S   utg000002c  ACTTAGACCTACCGTTCACCTAATGACT...CTTAGACCTACCGTTCACTAATGACTTG LN:i:125
L   utg000002c  +   utg000002c  +   0M
L   utg000002c  -   utg000002c  -   0M
a   utg000002c  0   read1:64-361    +     124
a   utg000002c  124 read2:498-743   -     1
S   utg000003c  TAAGGCTAATGGCACTCAGTAAC...TAACAATAAGGCTAATAG    LN:i:224
L   utg000003c  +   utg000003c  +   0M
L   utg000003c  -   utg000003c  -   0M
a   utg000003c  0   read3:52-294    +     106
a   utg000003c  106 read4:341-600   +     118
S   utg000004l  ACGCCAGTTGCTATGGAGCCATCC...CTCAACGGATAAAAGGGTACTCCACA   LN:i:302
a   utg000004l  0   read5:738-982   -     12
a   utg000004l  12  read6:492-762   +     12
a   utg000004l  24  read7:929-1194  +     15
a   utg000004l  39  read8:76-337    +     69
a   utg000004l  108 read9:796-989   +     194
x   utg000002c  125 2
x   utg000003c  224 2
x   utg000004l  302 5   0   0   read12:738-982  -   read15:796-989  -

其中S表示组装后的序列,包括名字、序列以及序列长度,a表示最佳组装路径,L表示overlap信息,x为各组装序列的统计结果

参考文献

[1] https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4937194/ PMID: 27153593

你可能感兴趣的:(使用长读长测序reads进行基因组组装-miniasm)