转载:http://blog.sina.com.cn/s/blog_4af3f0d20100fq5i.html

短序列组装(Sequence assembly)几乎是近年来next-generation sequencing最热门的话题。简单来说,就是把基因组长长的序列打断(shotgun sequencing),因为我们不知道基因组整条序列是如何排列(成一条链,最后成为一条染色体)组合(如何区分不同染色体)的,而我们又无法实现一次 把整条长序列完整测序(现在有单子测序可能是一个新的sunlight)。然后,我们通过算法,计算机的帮助,把这些短的序列组装起来成为一条完整有序的序列。

就好比我们有这样一句话:

it
is just a hypothesis, so don't be seriously!

假设,我们现在不知道这句话到底是什么,就像我们有一个box,我们抽到一张纸,但没打开,我们把这张纸撕成pieces,当然可能还发生了变化,所有的空格和标点都消失了(魔术!)我们得到:

itis ypo stah the sodo eriou siss ju ntbes sly……

因为我们测了几次,为了增加覆盖度,这样我们能通过高覆盖度而提高置信度:

itis ypo stah the sodo eriou siss ju ntbes sly tis yopth sodon
beser beser ssod iti sju……

另外,我们又发明了一种称作为paired-ends的序列测序方法,即两头定长,中间插入片段一定的序列,像这样:

iti*****ahyp
sju*****pot the*****don sod*****ser bes*****sly ……

这样我们根据如下图的方法,我们可以把这句话拼回来:

itisjustahypothesissodontbeseriously

但它不是最终结果,我们根据我们的现有的语法习惯,我们给它们加上空格(gap)和标点(遗漏的关键东西),我们能够还原原话!

第一:介绍一下组装的方法:

方法一:对序列进行组装,如果是重测序,可以用MAQ进行组装:Map to reference genome

方法二:如果是对新物种进行(de novo)测序,用velvet进行组装:De novo
assembly

第二:组装的原理和流程图:



方法一和方法二的区别是有无参考基因组(reference genome):下面是有参考基因组的一个结果显示

Mapping short reads to a reference

Eland

aligner for Illumina data

alignment policies:

• allows up to 2 mismatches/alignment

• non-unique alignments are discarded

Maq

• quality aware - takes seq quality into

  account

• allows non-unique alignments

Index methods

• reference genome is loaded into active

 memory as k-mers

• very fast alignments

• SOAP

• Bowtie

SNP detection, paired-end mapping, RNA-seq, ChIP-seq, etc.

Analysis depends on application

Mapping to reference genome

• useful for interrogating the “known” genome

• RNA sequencing

• ChIP sequencing

• SNP detection (targeted and whole-genome)

• methyl-seq

• CNV detection (sometimes)

De novo assembly

• no genome sequence

• unbiased ascertainment of variation in

  known genome by whole-genome reseq

第三:short reads alignment by MAQ

第四:velvet示意图:

通过上述两种方法可以完成高通量短序列数据的组装,但事实它并不简单,因为基因组中含有大量的重复序列(Repeats),多态性变异(Polymorphism),测序错误(Sequencing
error),这三个方面就是组装过程中出现组装错误的主要来源.

参考资料:http://blog.sina.com.cn/s/blog_4860086b0100dnos.html

http://seqanswers.com/forums/showthread.php?t=1024

短序列组装Sequence Assembly(转载)的更多相关文章

  1. 组装技术的新进展 New advances in sequence assembly.

    组装技术的新进展 1.测序和组装 很难想象今天距离提出测序和组装已经有40年啦.我们回头来看一下这个问题. “With modern fast sequencing techniques and su ...

  2. 简单DNA序列组装(非循环子图)

    生物信息学原理作业第四弹:DNA序列组装(非循环子图) 原理:生物信息学(孙啸) 大致思想: 1. 这个算法理解细节理解比较困难,建议看孙啸的生物信息学相关章节. 2. 算法要求所有序列覆盖整个目标D ...

  3. DNA序列组装(贪婪算法)

    生物信息学原理作业第四弹:DNA序列组装(贪婪算法) 原理:生物信息学(孙啸) 大致思想: 1. 找到权值最大的边: 2. 除去以最大权值边的起始顶点为起始顶点的边: 3. 除去以最大权值边为终点为终 ...

  4. BZOJ1345: [Baltic2007]序列问题Sequence

    1345: [Baltic2007]序列问题Sequence Time Limit: 5 Sec  Memory Limit: 162 MBSubmit: 556  Solved: 274[Submi ...

  5. bowtie:短序列比对的新工具

    bowtie:短序列比对的新工具(转) (2014-11-17 22:15:24) 转载▼ 标签: 转载   原文地址:bowtie:短序列比对的新工具(转)作者:玉琪星兆 Bowtie是一个超级快速 ...

  6. BZOJ1345 Baltic2007 序列问题Sequence 【思维题】*

    BZOJ1345 Baltic2007 序列问题Sequence Description 对于一个给定的序列a1,…,an,我们对它进行一个操作reduce(i),该操作将数列中的元素ai和ai+1用 ...

  7. 【BZOJ1345】[Baltic2007]序列问题Sequence 贪心+单调栈

    [BZOJ1345][Baltic2007]序列问题Sequence Description 对于一个给定的序列a1, …, an,我们对它进行一个操作reduce(i),该操作将数列中的元素ai和a ...

  8. BZOJ 1345: [Baltic2007]序列问题Sequence

    1345: [Baltic2007]序列问题Sequence Time Limit: 5 Sec  Memory Limit: 162 MBSubmit: 1180  Solved: 633[Subm ...

  9. PostgreSql 使用自定义序列(Sequence)向表插入数据

    最近公司使用到了PostgreSql,哈哈,这个SQL之前基本上没有用过,既然公司使用到了,那就学习一下吧,记一篇小笔记: 什么是PostgreSql:https://www.postgresql.o ...

随机推荐

  1. [对对子队]会议记录5.14(Scrum Meeting1)

    今天已完成的工作 何瑞 ​ 工作内容:初步完成循环指令系统 ​ 相关issue:实现循环语句系统的逻辑 ​ 相关签入:feat:循环语句的指令编辑系统初步完成 吴昭邦 ​ 工作内容:将流水线系统和循环 ...

  2. 大闸蟹的 O O 战记

    一. 第四单元架构设计分析 第一次作业,UML类图 第一次作业的主要任务是完成对UML类图的解析并实现查询等操作,需要在课程组给定的框架中添加函数.对于UML类图,其存储是按照元素来存储的,其将所有的 ...

  3. RocketMQ源码详解 | Producer篇 · 其二:消息组成、发送链路

    概述 在上一节 RocketMQ源码详解 | Producer篇 · 其一:Start,然后 Send 一条消息 中,我们了解了 Producer 在发送消息的流程.这次我们再来具体下看消息的构成与其 ...

  4. STM32必学的时钟系统

    STM32的时钟系统 相较于51单片机,stm32的时钟系统可以说是非常复杂了,我们现在看下面的一张图:   上图说明了时钟的走向,是从左至右的从时钟源一步步的分配给外设时钟.需要注意的是,上图左侧一 ...

  5. Spring MVC:HandlerMapping

    HandlerMapping 的类图 Spring中存在两种类型的handlers.第一种是 handler mappings(处理程序映射).它们的角色定位与前面所描述的功能完全相同.它们尝试将当前 ...

  6. linux shell 提示符

    当我们打开或者登陆到一个终端的时候都会显示一长串提示符 void@void-ThinkPad-E450:~$ 提示符一般包含当前登陆的用户名 ,主机名,以及当前工作路径路径,最后都是以 $ 或者 # ...

  7. 彻底解决SLF4J的日志冲突的问题

    今天公司同事上线时发现,有的机器打印了日志,而有的机器则一条日志也没有打.以往都是没有问题的. 因此猜测是这次开发间接引入新的日志jar包,日志冲突导致未打印. 排查代码发现,系统使用的是SLF4J框 ...

  8. 【Python+postman接口自动化测试】(8)以青云客机聊天器人和图灵聊天机器人接口示范python发送get和post

    以青云客机器人和图灵机器人接口示范python发送get和post 发送请求,我们这里主要使用Python的一个第三方包(需要先安装):requests. Python3自带的http.client和 ...

  9. Power Platform Center of Excellence (CoE) 部署完成&主要内容说明

    随着目前国内使用Power Platform的企业越来越多,而在跟客户交付项目时,客户经常想了解平台的一些基本情况: Power Platform 有多少环境,分别是谁创建和管理? Power Pla ...

  10. MyCat读写分离+MySql主从(一主一从)

    数据库一直在项目担当着一位核心的角色,是所有项目结构中的底层,说白了,我们程序员进行项目开发都是在和数据打交道,而数据都是保存在数据库中,如mysql.oracle.postgresql等等,如果一个 ...