德布鲁因图和OLC组装基因组

基本概念

  1. k-mer指的是bai将一条read,连du续切割,挨个碱基划动得到zhi的一序dao列长度为K的核苷酸序列
  2. contig表示从大规模测序得到的短读(reads)中找到的一致性序列
  3. 来确定一些Contig之间的顺序关系,这些先后顺序已知的Contigs组成Scaffold

Scaffold上可能有若干个Contig,中间有模糊序列相连接成Scaffold

德布鲁因图

所谓德布鲁因图就是有节点和边构成的有向图,其要求是相邻两个节点的元素错开一个碱基,例如第一个ATGCC和第二个TGCCA出了第一个和最后一个元素以外,都能完全匹配;由于测序错误或者其他原因,会有少数reads测错,所以会有上图存在的分叉路径存在,但由于匹配到的reads比较少,所以可以忽略

德布鲁因图是将你测序所得到的reads以kmer方式排列,如果几条reads之间有overlap,那么就很容易拼接成一个比较长的Contig,如上图所示最佳Contig序列为:ATGCCAATG,紫色为测错reads

那么将我们的reads转换为德布鲁因图的时候需要注意,图的节点代表k-mer,边代表欧拉行走的路径(欧拉行走指的是每一条边仅遍历一次)
假设说我有两个序列需要根据德布鲁因图拼接为Contig:
序列:

那么这两条reads的k-mer(k=3)分别为:
read1:ACT, CTA, TAG, GCT, CTA
read2:CTA, TAG, AGA, GAA

德布鲁因图:

每一条边遍历一次,两条边代表遍历两次,那么各个节点连接起来为:
ACT-CTA-TAG-GCT-CTA-TAG-GCT,Contig为:ACTAGCCTAGAA

但是实际情况远比这个复杂:

当有很多reads时,我们将会得到很多路径,那么我们需要将模型简化

大致有以上a,b,c,d这几种情况,黑色表示reads较多的路径,红色代表较少的路径,那么我们往往忽略较少reads的,而保留主干路径,由主干路径组装成Contig

OLC

OLC是: Overlap-Layout-Consensus的简写,首先构建重叠图,然后将重叠图收束成Contig,然后每一个Contig选择最有可能的核苷酸序列

重叠图的意思是对于一些序列,前后有若干个碱基是一样的(如上图所示),我们将其称之为重叠图

那么实际上我们测序的reads类似于上图的a,b,c片段:

而多个reads(片段)就可以构成重叠图,如上图所示,每个节点相当于一条read,有一种组长方法是基于SAS:Shortest common superstring
就是组装出最短的Contig序列,使得所有的reads都是该序列的子集
而寻找SCS的算法多采用贪心算法实现,例如下图所示:

最后确定相同位置的Contig,矫正碱基情况:

参考:ppt

德布鲁因图和OLC组装基因组相关推荐

  1. 纯二代测序从头组装基因组

    基因组组装 基因组组装一般分为三个层次,contig, scaffold和chromosomes. contig表示从大规模测序得到的短读(reads)中找到的一致性序列.组装的第一步就是从短片段(p ...

  2. 纯二代测序从头组装基因组(基础版)

    基因组组装 基因组组装一般分为三个层次,contig, scaffold和chromosomes. contig表示从大规模测序得到的短读(reads)中找到的一致性序列.组装的第一步就是从短片段(p ...

  3. Nature子刊:宏基因组组装基因组实现谱系解析

    宏基因组组装基因组实现谱系解析 MAGs achieve lineage resolution Nature Microbiology [IF: 17.745] DOI:https://doi.org ...

  4. NBT:牛瘤胃微生物组的4941个宏基因组组装基因组(MAG)

    牛瘤胃微生物组的参考基因组集 用于瘤胃微生物组生物学和酶发现的4,941个瘤胃宏基因组组装基因组集 Compendium of 4,941 rumen metagenome-assembled gen ...

  5. 利用3D-DNA流程组装基因组

    利用3D-DNA流程组装基因组 使用二代数据或三代数据得到contig后,下一步就是将contig提升到染色体水平.有很多策略可以做到这一点,比如说遗传图谱,BioNano(看运气), HiC, 参考 ...

  6. 生信人的一天~HIFI数据+HIC数据组装基因组

    HIFI加HIC数据组装基因组遇坑记@TOC 最近有一个大项目(大难题)自学基因组组装 生信入门这么久,一直都是使用别人处理好的数据,何时我才能产出自己的数据呢??? 干-- --实验想要自己产出数据 ...

  7. Megahit, metaSPAdes, metabat2, GTDB-tk, checkM

    参考 https://zhuanlan.zhihu.com/p/470457258.德布鲁因图和OLC组装基因组 - 简书 (jianshu.com).[算法学习 1] 基因组组装算法 De Brui ...

  8. 宏基因组组装神器-MEGAHIT使用及常见问题

    文章目录 简介 安装和使用 常见报错和解决方法 输出结果 参考 简介 宏基因组测序获得海量短片段测序数据,这些数据混合着环境中各种各样的微生物基因组序列,如何恢复出这些微生物基因组序列,基因组组装成为 ...

  9. 一文详解基因组denovo组装原理和实战

    关于更多生物医疗大数据分析工具和软件的介绍和使用请看六点了官网[1]. 图文:心如止水  编辑 marple 目录 1.基因组组装 2.基于De-Bruijn Graph的组装算法 3.SOAPden ...

最新文章

  1. LeetCode Search in Rotated Sorted Array II
  2. TCP和UDP是否可以绑定同一端口进行通信
  3. react发送和接收请求_React行为编程简介:请求,等待和阻止
  4. java分割例子,Java 分割字符串详解及实例代码
  5. BZOJ1010:[HNOI2008]玩具装箱TOY(斜率优化DP)
  6. 两台笔记本的操作系统都为xp的共享上网教程
  7. 中间人攻击利用框架bettercap测试
  8. 242.有效的字母异位词(力扣leetcode) 博主可答疑该问题
  9. 关于DNF的多媒体包NPK文件的那些事儿(6) - IMGV4
  10. 讲讲NVivo11的版本细节
  11. 实现图像批量重命名处理方法(mat文件、matlab简单程序等方法)
  12. 投影幕布尺寸计算器_投影幕布:投影幕布的尺寸计算
  13. 联想a30微型计算机,TEP-I-G W13030123 监控模块,监控单元泰坦TEP-I系列微机监控装置...
  14. 程序员福利---免费接口
  15. Python报错UnicodeEncodeError: 'gbk' codec can't encode character '\xa9' in position 1919: illegal mult
  16. chrome 显示IP地址
  17. 英文wiki技术基础问题查询的常见问题
  18. SoLoMo:移动互联网创新的“三维模式”分析
  19. 农行显示向百度服务器,百度与农行达成战略合作:共建智能银行
  20. python多线程解决数据安全问题

热门文章

  1. 聚焦自动驾驶环境感知,AVVision Special Session (ICAS'21) 征稿开启
  2. 基克的聚合 机器人_新版本辅助装大改 基克的聚合不能错过
  3. docker 启动,关闭,查看运行状态
  4. RDKit | 比较化合物并通过PCA可视化化学空间
  5. ldconfig提示is not a symbolic link警告的去除方法
  6. 如何在内嵌 css 中编写: hover_优秀 CSS 代码的 8 个编写技巧!
  7. 在线作图|如何绘制带分组的散点图
  8. 在线作图|如何绘制一张星图
  9. NAR:宏基因组网络分析工具MetagenoNets
  10. mSystems: 南土所褚海燕组揭示了大空间尺度下空间比季节对土壤微生物群落的影响大