转自:https://zhuanlan.zhihu.com/p/20702684

1.基本概念

  • flowcell 是指Illumina测序时,测序反应发生的位置,1个flowcell含有8条lane
  • lane 每一个flowcell上都有8条泳道,用于测序反应,可以添加试剂,洗脱等等
  • tile 每一次测序荧光扫描的最小单位
  • reads 指测序的结果,1条序列一般称为1条reads
  • bp base pair 碱基对,用于衡量序列长度
  • 双端测序 只一条序列可能比较长如500bp,我们可以两端每端各测150bp
  • junction 上面说的双端测序,中间会留有200bp测不到的东西,我们叫junction
  • adapter 就是测序中需要的一段特定的序列,有类似于引物的功能
  • primer PCR中的引物

cDNA:complementary DNA互补脱氧核糖核酸。以一种逆转录酶,以mRNA为模板做成的复制品,将真核生物的基因(以mRNA的形式)复制到原核生物细胞中。

//哭,昨天写的没保存啊,写了好多呢,哭死。

2.BWT算法

来自视频:https://www.bilibili.com/video/av15743137

二代序列:较短250bp,相比较精度较高1%=Q30.

对于三代测序来说:数据较长,但是不稳定。

首先讲到了双序列比对——pairwise alignment,有全局比对(Needleman worsh)、局部比对(Smith wosen)

但是对于基因组比较的时候,相当于把seq1换成了ref,先从Seq2里找到一个seed,通过seed找到ref的index,再把这个ref附近的序列做pairwise alignment,

*高通量测序中,index的作用:区分各组样本数据,每个样本都有不同的index,在测序时会通过index将不同的样本分开,形成不同的文件夹。

那么第一步是比较重点的:第一代有华大的SOAP,MAQ等,是将基因组打为一小段一小段的,然后通过哈希存储,知道这一小短序就能知道它所在的位置,但是占用内存高速度慢找的准。

第二代就是bowtie解决速度的问题。

将测序数据比对到参考基因组

BWT算法:最早用于做数据压缩。

比如对一个初始序列:ACAACG;

第一部处理+$,进行平移:得到一个矩阵,称为原始矩阵Raw M:

ACAACG$

$ACAACG

G$ACAAC

CG$ACAA

ACG$ACA

AACG$AC

CAACG$A

将矩阵进行转换 ,M': ,默认将$开头作为第一行:

很明显这个第二个矩阵,就是将第一个矩阵以字母顺序排序开头而已。

需要将第1列作为F列,最后一列作为L(ast)列;

那么转换矩阵中F和L的关系:

1)同一行内,L是F的前一个字符;(因为它就是那样平移过去的)

2)单字母的相对位置不变,比如L中的第一个C是对应F中的第一个C

那么:只需存储L和相对位置,可以根据L推出F,根据LF可以知道整个ref。那么怎么找呢?

倒着查找即可。首先最后一个是$,那么在L的$对应F中的第一个,对应L是G,那么可以得出$前是G;

L中的G对应F中的G,对应L中的C,可以得出G前面是C,以此类推。哇哦果然可以进行数据压缩。

那么上面进行的是整个基因组的比对,但是如果想进行一个段序列比如CAA呢?下面进行一下演示:

比对时也是倒序比对的,有时会允许出错,有一个mismatch阈值,那么最终可以比对上。

所以最终只需要存储L和每个字母的位置即可,F可以根据L中的字母拍出来序啊,所以不用存储的。

有个同学提问说,允许mismatch是否允许gap?(好厉害啊,我怎么都没考虑,只是接受不去思考啊!)

bowtie1不支持Gap open,中间不允许插入缺失。比对过程下:

序列大约长度为36bp,将前28作为高质量区域,并且高质量又平分为两段,前半段14为HQ,后半段14为LQ,先用HQ作为seed去上述过程,再用LQ作为seed去做上述过程,如果总的mismatch<=2,那么就接着进行后面的比对,如果>2,就认为比对不上,这个2参数是可以调整的。

bowtie2的比对过程:支持了gap open问题;

第一步选择seed区域,

有两种方法:

1.每个fragment长度是20,其中前18是一个seed,再跟两个gap,这样用seed片段去比对。

2.10-16,比如第一次选1-16,那么第二次选10-26,有6个的overlap,也就是window=10;

这样通过将seed与基因组进行比对,就可以知道当前序列在基因组中的大致位置,将在基因组中的序列取出,此时再用NW或者SW算法进行比对,这个时候就可以有gap了,但是seed中间是不能有map的。

unique map包含两种: 一种是在基因组中只有一个map;另一:有一个map得分很高,另一个得分低很多。

但是up主认为这种没有太大的意义,因为基因组中duplication非常多。

3.第一代测序技术Sanger

//看一下那个视频和博客。

转载于:https://www.cnblogs.com/BlueBlueSea/p/9775645.html

生信学习-二代测序知乎专栏总结[转]相关推荐

  1. 送书 | 知乎阅读300w+的生信学习指南(更新版)

    先送书 在上周的留言送书活动中,恭喜下面这位读者获得书籍"Oracle高性能系统架构实战大全",请及时与生信宝典编辑(shengxinbaodian)联系. 2020过去三分之一了 ...

  2. 知乎阅读三百万的生信学习指南

    作为本科学生物,硕博转行生物信息的人,经常会被人问起,为啥学习生物信息了呢?这背后通常会带着一些困惑,生物信息分析好不好学? 生信的作用越来越大,想学的人越来越多,不管是为了以后发展,还是为了解决眼下 ...

  3. 计算机通路的基本概念,【生信学习笔记】KEGG分子通路数据库

    原标题:[生信学习笔记]KEGG分子通路数据库 首先什么是一个通路? 通路可以定义为a series of actions among molecules in a cell,细胞中的分子的一系列的行 ...

  4. 【生信】常见测序数据格式

    [生信]常见测序数据格式 文章的文字与图片全部/部分来源网络或学术论文,文章会持续修缮更新,仅供大家学习使用. 目录 [生信]常见测序数据格式 1.FASTA 2.FASTQ 3.GFF 4.BED ...

  5. 生信学习学的是什么?常识!

    生物信息学学的是什么?常识! 学习的是基本生物学概念的常识! 学习的是计算机基础的常识! 学习的是图形解读的常识! 学习的是统计的常识! 拦住生信学习脚步的不是技术有多难,而是有些常识你还不知道. 这 ...

  6. 生信学习——R语言练习题-初级(附详细答案解读)

    题目目录 1. 打开 Rstudio 告诉我它的工作目录. 2. 新建6个向量,基于不同的数据类型.(重点是字符串,数值,逻辑值) 3. 告诉我在你打开的rstudio里面 getwd() 代码运行后 ...

  7. 生信学习——R语言学习总结

    写在前面--经过了四十天断断续续的学习,算是对R语言有了初步的了解.其实使用R语言,无非就是对数据进行处理分析,然后把结果可视化.但是数据的千变万化,还有数以万计的函数.数据格式,使得这个过程变得很复 ...

  8. 生信学习之通路富集一(GO分析)

    生信学习之通路富集一(GO分析): 富集分析的理论知识 富集分析(Enrichment Analysis)是一种广泛应用于生物信息学研究的统计方法,主要用于检验一个基因集合中某些功能或特征的富集程度. ...

  9. 生信学习笔记:fastp质控处理生成的report结果解读

    文章目录 前言 raw data 和 fastq文件 reads Q20和Q30 N值 Adapters Duplication Insert fastp report summary Adapter ...

最新文章

  1. 浅析微信支付:开发前的准备
  2. android VectorDrawable使用笔记(三)
  3. Android网络传输中必用的两个加密算法:MD5 和 RSA (附java完成测试代码)
  4. 设计一个简单的空间配置器
  5. mongodb 索引去重_PostgreSQL13新特性解读Btree索引去重Deduplication
  6. 弹性计算双周刊 第7期
  7. 转载:CEO如何“养好CIO同时管好CIO”?
  8. php mysql 复制数据库表结构图_MySQL_Mysql复制表结构、表数据的方法,本文给大家分享了好几种复制 - phpStudy...
  9. 完全卸载gitlab
  10. pandas.Series.quantile
  11. 二维前缀和(附模板题)
  12. [转载] 第一个Python CGI编程和配置
  13. 京东VS淘宝:待付款订单-再次支付方案对比
  14. jvm gc日志分析和工具
  15. python plot_surface 画表面网格图
  16. 判断天干,地支,生肖推算
  17. Python使用openpyxl模块小批量处理Excel文件
  18. iOS——编译与链接
  19. Ps如何调出一寸或者二寸等规定尺寸的照片
  20. C/C++中argv[ ]与argc内容解读//(涉及运用cmd)

热门文章

  1. 2020-09-22
  2. react中使用微信jssdk分享总结
  3. python定时发微信消息给心爱的她
  4. 交换机、路由器、服务器、存储选型
  5. 大数据 - MapReduce编程案例 -BH3
  6. The Independent JPEG Group‘s JPEG software
  7. 2019届高三理科数学选择填空整理
  8. 去中心化数据库:传统IT与区块链的未来融合形式
  9. 万网免费空间php,免费虚拟主机空间
  10. ios开发者联系方式