pb dropdownlistbox 代码设置日期_神灯宝典之PB三代重测序分析实录(一)

本文介绍了基于PacBio三代测序的数据处理,包括数据类型、转化方法、参考基因组获取。重点对比了NGMLR和PBMM2两种比对软件在三代重测序中的应用,提供了比对命令示例,并强调了PBMM2的高效和便捷性。文章适合进行三代测序数据分析的科研工作者阅读。
摘要由CSDN通过智能技术生成

17d68fdffcf3b62f2d2d77f7f6d670c8.gif

7a987cc2cf017edc252bcb505255d246.gif

神灯宝典   

◀    PB三代重测序分析实录(一)

以PacBio公司SMRT技术为代表的第三代单分子荧光测序平台,相较于传统NGS平台,虽测序费用较高,在CLR模式下测序错误率达5~15%,然而其长读长(十KB到几十KB),且在HiFi模式下测序准确,无需PCR扩增等优点为以测序为基础的科学研究带来了革命性的突破。

目前PB三代测序广泛应用于基因组Denovo、全长转录本检测、宏基因组、重测序和变异检测等多个方向,并且在染色体结构变异(SV)的检测中有着不可替代的优势。

今天起小编以信息分析的角度帮大家总结PB三代重测序基础和分析方法,期望各位看官读完之后能收获满满~

1

数 据 准 备

数据类型介绍

97417a34ca7910c28c9227070d8f1b8c.gif

PB平台的subreads和CCS reads产生过程示意图如下:

c5f57bbd49d65b5cd32d10865d12d3b9.pngbd2486a2ffe043ae12304bea988f477d.png

由上述示意图可以看到,在PB三代测序产生数据的过程中,双链DNA片段两端添加测序接头,通过引物和DNA聚合酶的作用开始环形地边合成边测序过程,每合成一圈,可以得到2X DNA目的片段的测序结果。

测序结束后得到的包含若干圈含有接头和目的片段序列的reads,通常称之为polymerase reads,而去除测序接头后得到的若干条目的片段序列为subreads

CLR模式:当插入片段读长较长时,一个插入片段只能测到一次,每一个ZMW(零模波导孔)得到的subreads就是该测序得到的序列,该序列的准确度在85%以上。

HiFi模式:当插入片段适中时,对于同一个片段会被测到N次,将来源于同一个ZMW(零模波导孔)的subreads 经过一致性矫正后会得到一条CCS read。由于CCS read经过一致性矫正,准确率非常高,在小突变的检测上也有极佳的表现。

数 据 转 化

97417a34ca7910c28c9227070d8f1b8c.gif

01

CLR模式的下机数据形式

CLR模式下,我们得到的是subreads。 使用的下机文件是subreads.bam和subreads.bam.pbi,如下图所示:

b45eb09fb0dbbe7e1034e1c7362e0f88.png

subreads.bam:类似于NSG测序下机的fastq文件,以bam文件格式进行序列存储,减少占用储存空间和传输数据时间。

subreads.bam.pbi:是bam文件的索引文件,用于辅助比对分析更快地进行。

02

HiFi模式的下机数据形式

HiFi模式得到是更为准确的CCS reads,使用下机的ccs.bam和ccs.bam.pbi。如下图所示: 36be03332b00f5c63fa8357c04601151.png 小技巧:如果只有subreads.bam,怎么转换成ccs.bam呢?如果下机数据只有subreads.bam,并确认数据测序采用了HiFi模式,可使用PB官方smrtlink软件中的ccs工具将subreads.bam转换为ccs.bam,命令如下:

ccs  *.subreads.bam  *.ccs.bam

或者可以采用分割文件,并行模式,下面代码示例为分成10份运行:

ccs *.subreads.bam *.ccs.1.bam --chunk 1/10 -j ccs *.subreads.bam *.ccs.2.bam --chunk 2/10 -j ...ccs *.subreads.bam *.ccs.10.bam --chunk 10/10 -j pbmerge -o *.ccs.bam movie.ccs.*.bam

转换过程非常慢,建议拆分并给足资源,千万别小气~

别忘了,转换完成后使用smrtlink中的pbindex工具生成.pbi索引文件:

pbindex  *.ccs.bam

参考基因组获取

97417a34ca7910c28c9227070d8f1b8c.gif

分析前,除下机数据外,我们还需准备对应物种的参考基因组fasta文件。对此可以根据自己研究的需要,在NCBI、Ensembl、UCSC等常见数据库中进行下载,以UCSC下载人类hg19版本基因组序列为例:进入UCSC官网点击下载页签。

http://hgdownload.soe.ucsc.edu/downloads.html#human

c5f57bbd49d65b5cd32d10865d12d3b9.pngaeae53c4d33f28871dc3abf837af38fa.png

点击Human后,便可看到如下界面:

b44dafd144798be5d65af1eb84e6aa5b.png

点击上图红框所示,便可得到hg19的基因组序列。

2

数 据 比 对

比对方法介绍比较

33a8af2fcad6e3f0ac8c1baeee208e28.gif

在上述准备工作完成后,我们就可以将下机数据和我们下载的参考基因组序列进行比对了。

PB三代数据有很多比对软件可供选择,例如:LAST、BlasR、BWA-MEM、GraphMap、MECAT、minimap2、pbmm2、NGMLR等等,现在较为常用的是minimap2、pbmm2、NGMLR,其中pbmm2是PB官方基于minimap2进行优化的版本。

那么我们到底该选哪款?

别急,先让我们看看下面的文献测评结果:

c5f57bbd49d65b5cd32d10865d12d3b9.pngcaeb2bdbbca213addedb3a8c599c7773.png

图中横坐标为不同结构变异的长度,由此我们可以看出,在进行结构变异检测时NGMLR比对效果要更好些,minimap2效果要稍逊。然而在实际项目分析时,NGMLR速度要慢于其他两款软件,且步骤稍繁琐,因此大家可以根据自己喜好,自行选择。

下面我们挑选两种常用软件,给大家展示一下~

NGMLR比对分析

33a8af2fcad6e3f0ac8c1baeee208e28.gif

NGMLR比对命令:

##如一个样品有多批数据需合并,需要如下操作,只有一批可跳过此步骤samtools view  -H  *.bam  -o  header.samsamtools merge  -f  -h  header.sam  out.bam  input1.bam  input2.bam##将bam文件转换为常规的fq文件,ngmlr不支持直接读入bam文件bam2fastq  --force  out.bam  -o  out.fq##ngmlr比对并用samtools提取比对上reads进行输入,-t指定线程,-x 指定模式[pacbio,ont],-r 指定参考基因组(所在路径要有可写权限,否则无法正常生成.ngm文件,导致比对异常中断) -q 输入fq序列ngmlr -t 20 -x pacbio -r ucsc.hg19.fasta -q out.fq 2 >> map.log | samtools view -h -bS -F 4 --o aligned.bam##使用samtools对比对后的bam文件进行排序,以便后续变异检测或其他处理samtools sort -@ 4 -m 5G aligned.bam aligned.sort.bam

 从上述分析步骤可以看出,由于ngmlr不支持多个输入文件,输出文件没有排序,没有选择性输出比对/未比对结果,因此整个步骤比较繁琐。如果整个过程使用4个线程进行分析,30X CLR数据预计耗时7天左右,20个线程约在1~2天内能完成分析。

PBMM2比对分析

33a8af2fcad6e3f0ac8c1baeee208e28.gif

pbmm2比对命令:

##将同一个样品分批bam文件全路径逐行记录在fofn文件中echo /your_path/1_subreads_or_ccs.bam,/your_path/2_subreads_or_ccs.bam,/your_path/3_subreads_or_ccs.bam | sed 's/,/\n/g' > test.bam.fofn##查看生成的文件,看看文件是否正确;此文件也可以手动创建cat test.bam.fofn/your_path/1_subreads_or_ccs.bam/your_path/2_subreads_or_ccs.bam/your_path/3_subreads_or_ccs.bam##运行pbmm2,可输入.fofn 或者单个bam文件pbmm2 align ucsc.hg19.fa test.bam.fofn out.aligned.sort.bam(输出比对结果bam路径+名称) --sample aladdin -j 8 -J 8 --sort --preset CCS  --median-filter  --log-level INFO  --log-file pbmm2.log

##--sample指定样品名称,-j指定比对线程,-J 8指定排序步骤线程,--sort输出排序后的bam,--preset选择参数集,subreads数据请使用--preset SUBREADS

由于是PB官方推出的比对软件,整体和下机数据格式的契合度比较高,几乎可以实现一行命令从下机bam文件到比对后的bam文件,且无需再进行比对上的reads提取和排序。整个软件的速度也比较快,按照示例设置,1天内可以完成30X CLR数据分析。

小技巧

1.如果担心比对结果不佳,需要输出未比对的reads进行排查,可以加上--unmapped参数。

2.--median-filter需要注意,加入此参数,比对时默认来源于一个polymerase read(ZMW)的若干subreads,比对时只选用长度分布是这些reads长度中值的一条进行比对(猜测这可能是快的原因)。因此计算比对率时,公式应变更为:比对上的subreads数或ccs reads数/polymerase reads数,而不是其他软件惯用的除以输入的总reads数!

3.由于pbmm2生成的bam文件MD tag格式有些特别,无法用于后续的sniffles进行SV检测。实际测试使用samtools calmd 添加MD tag 可以用于sniffles分析。虽然可以运行,生成结果却异常,所以推荐使用pbsv进行后续SV检测。

关于minimap2的使用,限于篇幅,不再详述,相信大家看过前两个案例后,使用MinMap2不再话下。 需要特别强调的是,如果使用 minimap2 + sniffles进行SV检测,比对时一定要加上--MD来生成bam文件的MD tag,否则sniffles运行会报错!

今天,作为PB三代重测序系列的第一篇,从数据分析的角度介绍了三代重测序数据基本知识和比对分析。

写到此处不免生出“纸短情长”的感觉,关于PB三代重测序,还有太多的东西需要讲:染色体结构变异检测,小突变SNV和INDEL的检测、突变注释、多样品SV合并分析,肿瘤成对样品SV筛选、单基因病或遗传病家系分析等内容只能留待后续系列陆续推出,敬请期待!

最后啰嗦一句,喜欢的同学们不妨转发给更多需要的同胞,共同学习和进步是我们创刊更新的不竭动力,同时也欢迎大家留言讨论交流~

参考文献:

Sedlazeck F J , Rescheneder P , Smolka M , et al. Accurate detection of complex structural variations using single-molecule sequencing[J]. Nature Methods, 2018.

Audano P A, Sulovari A, Graves-Lindsay T A, et al. Characterizing the major structural variant alleles of the human genome[J]. Cell, 2019, 176(3): 663-675. e19.

Wenger A M, Peluso P, Rowell W J, et al. Accurate circular consensus long-read sequencing improves variant detection and assembly of a human genome[J]. Nature biotechnology, 2019, 37(10): 1155-1162.

作者:云歌

审稿:童蒙

编辑:angelica

997dca147e9d00447f5c4429e37e2d8e.png 27cd5d0ede2664f33dc23df314e823a1.gif

9282b31067ebf9161eba256bddf5ffac.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值