基因组 de novo 组装原理
Falcon软件的组装流程
- 为了错误校正,将原始子reads进行overlap
- 预组装和错误校正
- 错误校正后reads的overlap检测
- overlap的过滤
- 从overlap构建图
- 从图构建contigs
几个解释:
sub-reads是啥?为什么要进行错误校正?校正的原理是什么?length_cutoff和length_cutoff_pre分别是什么意思,为什么要设置这两个参数?
sub-reads就是机器出来的reads经过处理后的子reads,方便软件处理;
因为第三代测序是单分子测序,读长大,reads长,错误率高,单条reads的正确率只有85%,必须进行校正。
如果测序深度足够,那么就可以构建overlap,根据概率学原理,可以进行校正。
cutoff就是扔掉长度不足的reads(例如:扔掉10K以下的reads),因为reads太短没有多大意义,增加计算量,校正时,不能切掉太多的reads,所以其cutoff值较小;预组装时,短reads该利用的信息已经利用完了,可以扔掉了,所以其cutoff可以设置得稍微大些,减少计算量。
为什么错误校正后还要进行overlap? 参数 -e.96 和 -e.70 分别是什么意思?
因为错误校正后的reads变化非常之大,必须重新进行overlap,-e是一致性参数,就是精度的意思,组装之前,因为错误率较高,可以容忍较低的一致性0.70;组装时,reads已经校正好了,所以对一致性较高,调到了0.96.
为什么要将overlap进行过滤?
为了砍掉一些没有必要的计算,减少计算量,只选择最好的n个overlap进行组装,过滤掉重复序列。
构建图构建contigs大致是个什么意思?
就是根据overlap一个一个的把reads连起来,从前到后,因为重复序列的原因,必然会组成图(图会有各种形态)
然后根据一定的原则,去掉图中一些没有必要的边,选择一条最优的路径,就可以组成我们想要的最终的contigs。