RNAseq测序reads定位
RNAseq测序reads定位
- 发表评论
- 3,210
- A+
获得RNA-seq的原始数据后,首先需要将所有测序读段通过序列映射(mapping)定位到参考基因组上,这是所有后续处理和分析的基础.在读段定位之前,有时还需要根据测序数据情况对其做某些基本的预处理.
例如,过滤掉测序质量较差的读段,对miRNA测序读段数据去除接头序列等.
高通量测序的海量数据对计算机算法的运行时间提出了很高的要求.针对诸如Illumina/Solexa等测序平台得到的读段一般较短、且插入删除错误较少等特点,人们开发了一些短序列定位算法.这些算法主要采用空位种子索引法(spaced-seedindexing)或Burrows-Wheeler转换(Burrows-WheelerTransform,BWT)技术来实现.空位种子索引法首先将读段切分,并选取其中一段或几段作为种子建立搜索索引,再通过查找索引、延展匹配来实现读段定位,通过轮换种子考虑允许出现错配(mismatch)的各种可能的位置组合.BWT
方法通过B-W转换将基因组序列按一定规则压缩并建立索引,再通过查找和回溯来定位读段,在查找时
可通过碱基替代来实现允许的错配.表1列出了目前可免费下载使用的部分短序列定位软件.其中采用空位种子片段索引法的代表是Maq,而采用Burrows-Wheeler转换的代表是Bowtie.总的来说,采用BWT的定位算法在时间效率上要优于空位种子片段索引法.随着读长的增加,允许读段序列中存在插入删除(indel)的定位变得可行而重要.由于以上两类方法对序列中插入删除的处理较为困难,近来人们开发了一些基于改进的Smith-Waterman动态规划算法的序列比对工具,如BFAST、SHRiMP、Mosaik(http://bioinformatics.bc.edu/marthlab/Mosaik)等,但算法速度较慢,大多需采用计算机并行编程技术来解决运行时间的问题. 下面是 MAQ, Bowtie, BWA, ZOOM, ELAND, SOAP2, RazerS, Novoalign, SHRiMP, BFAST, 以及 Mosaik等mapping软件格式算法的比对信息。

在RNA测序数据的基因组定位中,一个特殊的问题是跨越两个外显子接合区的读段(junctionreads)的定位.在真核生物中,成熟的mRNA是经过由mRNA前体中的外显子经过剪接形成的.如果一个读段跨越了两个外显子,那么就无法将这个读段完整地定位到基因组序列上.而同时,这种跨两个外显子的读段在分析转录本的剪接形式和研究选择性剪接中有重要的作用.为了解决这一问题,人们采取两种典型的策略来进行接合区读段的定位:一是根据已知的基因外显子注释,构建所有可能的外显子接合区序列,与基因组序列一并作为定位的参考基因组;二是不依赖基因注释,而是先利用能完整定位到基因组的读段得到粗略的外显子区域,并结合剪接位点序列构建出可能的剪接位点,然后将不能完整定位的读段分段定位到两个外显子可能的结合区域.Illumina/Solexa平台提供的RNA-seq软件分析包GApipeline采用了第一种策略.采用第二种策略的软件有Tophat和G-Mo.R-Se等,最新的Tophat软件增加了利用已知外显子边界注释信息的选项.
不论是哪种测序平台,测序中都不可避免地存在一定的错误,基因组中又存在单核苷酸多态性等引起的序列变化,所以在读段定位时通常允许一定数量的错配,可以根据不同应用调节允许错配的程度.另一方面,由于基因组中重复序列和高相似度序列的影响,某些读段会出现定位到基因组多个位置的情况.这些因素影响了各个读段到基因组的定位质量,在一些新的读段定位算法中,同时给出每个读段与基因组匹配质量.通常在后续处理前,人们将多定位的读段都过滤掉,也有人尝试用适当的策略把多定位读段“分配”到其中某些位置上.
读段定位到基因组后推荐采用SAM(SequenceAlignment/Map)格式或其二进制版本BAM格式来存储.二进制版本可大大节省存储空间,但不能直接用普通文本编辑工具显示.关于SAM格式的详细介绍,可查阅(http://samtools.sourceforge.net/SAM1.pdf).
RNAseq测序reads定位的更多相关文章
- 去除测序reads中的接头:adaptor
之前用c写过一个程序,查找reads中是否包含了adaptor,如果检测到的话就过滤掉含有adaptor的reads,这次在过滤完数据之后发现接头序列比较多,为了提升组装效果,又不能很大地影响数据量, ...
- 转录组分析综述A survey of best practices for RNA-seq data analysis
转录组分析综述 转录组 文献解读 Trinity cufflinks 转录组研究综述文章解读 今天介绍下小编最近阅读的关于RNA-seq分析的文章,文章发在Genome Biology 上的A sur ...
- 混合(Pooling)样本测序研究
目录 1.混合测序基础 2. 点突变检测 3. BSA 4. BSR 5. 混合样本GWAS分析 6. 混合样本驯化研究 7. 小结 1.混合测序基础 测序成本虽然下降了,但对于植物育种应用研究来说还 ...
- 【转录组入门】3:了解fastq测序数据
操作:需要用安装好的sratoolkit把sra文件转换为fastq格式的测序文件,并且用fastqc软件测试测序文件的质量 作业:理解测序reads,GC含量,质量值,接头,index,fastqc ...
- RNA-seq中的基因表达量计算和表达差异分析
RNA-seq中的基因表达量计算和表达差异分析 差异分析的步骤:1)比对:2) read count计算:3) read count的归一化:4)差异表达分析: 背景知识:1)比对:普通比对: BWA ...
- A survey of best practices for RNA-seq data analysis RNA-seq数据分析指南
A survey of best practices for RNA-seq data analysis RNA-seq数据分析指南 内容 前言 各位同学/老师,大家好,现在由我给大家讲讲我的文献阅读 ...
- DART: a fast and accurate RNA-seq mapper with a partitioning strategy DART:使用分区策略的快速准确的RNA-seq映射器
DART: a fast and accurate RNA-seq mapper with a partitioning strategyDART:使用分区策略的快速准确的RNA-seq映射器 Abs ...
- Circular RNA的产生机制、功能及RNA-seq数据鉴定方法
推荐关注微信公众号:AIPuFuBio,和使用免费生物信息学资源和工具AIPuFu:http://www.aipufu.com. [Circular RNA的产生机制] Circular RNA,缩写 ...
- 用单分子测序(single-molecule sequencing)和局部敏感哈希(locality-sensitive hashing)来组装大型基因组
Assembling large genomes with single-molecule sequencing and locality-sensitive hashing 好好读读,算法系列的好文 ...
随机推荐
- 小程序2-基本架构讲解(一)JSON配置与详解
项目里边生成了不同类型的文件: .json 后缀的 JSON 配置文件 .wxml 后缀的 WXML 模板文件 .wxss 后缀的 WXSS 样式文件 .js 后缀的 JS 脚本逻辑文件 JSON 配 ...
- Akka详细介绍
AKKA NOTES - 介绍演员 任何在过去做过多线程的人都不会否认管理多线程应用程序有多么困难和痛苦.我说管理因为它开始很简单,一旦你开始看到性能改进,它变得非常有趣.但是,当您发现没有更简单的方 ...
- 在IDEA中设置命令行参数
- hbase版本升级的api对比
前言 今天来介绍一下,hbase的2.1.0版本升级之后和1.2.6版本的api方法的一些不同之处. hbase的工具类 在介绍hbase的相关的java api之前,这里先介绍一下hbase的工具类 ...
- 回溯法 17. Letter Combinations of a Phone Number
class Solution { public: map<char,string> dict; vector<string> letterCombinations(string ...
- Confluence安装部署
前言:Confluence是一个专业的企业知识管理与协同软件,可以用于构建企业wiki.通过它可以实现团队成员之间的协作和知识共享.现在大多数公司都会部署一套Confluence,用作内部WiKi. ...
- MySql日期与时间函数
select DATE_FORMAT(date_sub(current_date(), interval 1 day), '%Y-%m-%d') -- 2018-05-29(昨天) select DA ...
- 爬虫之进阶 twisted
简介 Twisted是用Python实现的基于事件驱动的网络引擎框架.Twisted诞生于2000年初,在当时的网络游戏开发者看来,无论他们使用哪种语言,手中都鲜有可兼顾扩展性及跨平台的网络库.Twi ...
- React—Native开发之 Could not connect to development server(Android)解决方法
作为初学者昨天还好好能跑的项目今天就会遇到突然爆红出错是经常的事,让我们来看下是什么错吧 先来翻译: 连接不到开发的服务器. 请按照以下的步骤来修复此问题: 确保包服务器在运行确保你的设备或者模拟器连 ...
- X1226 和 AT24C16 地址冲突问题
这几天开发eeprom功能的时候,利用单片机的I2C接口访问AT24C16.遇到一个问题: 发现AT24C16的最后一页写不进去.表现为写任何值后,再读取都是0. 经过几天的排查,发现是应为在I2C总 ...