Trinity,是由 the Broad Institute 开发的转录组denovo组装软件,由三个独立的软件模块组成:Inchworm, Chrysalis和Butterfly。三个软件依次来处理大规模的RNA-seq的reads数据。Trinity的简要工作流程Inchworm将RNA-seq的原始reads数据组装成Unique序列;Chrysalis将上一步生成的contigs聚类,然后对每个components构建deBruijn图;Butterfly 处理这些deBruijn图,依据图中reads和成对的reads来寻找路径,从而得到具有可变剪接的全长转录子,同时将旁系同源基因的转录子分开。下面对Trinity原理做一个详细的介绍1)Inchworm生成contig假设kmer长度是k,将测序reads以k-1的overlap分割成长度为k的k-mer,去除可能错误的kmer,低复杂度和单一的kmers,构建成kmer库,以出现次数最高的kmer作为基序,基于k-1个overlap向两边贪婪延伸,直到不能延伸之后得到一个contig,去除已经使用过的kmer,对于剩余的kmer按照上述方法延伸得到contig。直到kmer用完,生成contig过程结束。具体过程如下图所示:举个具体的例子,假如kmer是7,kmer库为:其中出现次数最高的是GATTACA,以ATTACA为overlap向两端延伸,下一个碱基的可能是只有四种G、A、T、C。其中出现次数最高ATTACAG和ATTACAC(4次)。分别以TTACAG和TTACAC为基序延伸,以此类推延伸(反向也是如此),直到不能再延伸为止。最终contig序列为:…AAGATTACAGA…2)contig聚类成components根据最小overlap聚类contig。每一个component 是由contigs组成的集合,这些contig可能是来自可变剪切体或者相近的旁系同源物。contig聚类满足的条件:(1) contig之间有k-1碱基的overlap(2) 满足跨越两个contig的junction的最小reads数,且(k-1)mer的junction两端分别有(k-1)/2的碱基支持。3)构建de Bruijn图每一个component构建一个de Bruijn图,k-1个字节大小表示节点,k个字节大小表示连接节点的边,原始数据集中支持的(k-1)mer的数目作为边的权重。a. de Bruijn图简化合并de Bruijn图中的线性路径中的连续节点生成较长序列的节点,剔除可能由于测序错误(只有极少reads支持)的分叉,使边均匀。(多倍体多态性似乎比测序错误更常见,保留)b. 寻找最佳路径动态打分算法,鉴定被reads或双端reads支持的路径,剔除reads支持比较少的路径,将最佳路径上的碱基输出到fasta文件中。结 果按照 DNAXX,components, gene和 isoform分组的线性序列(见以下可左右滑动方框),Gene以下 isoform通常可能为同一基因的不同可变剪切。>TRINITY_DN6743_c1_g1_i1 len:403_path:[5739,5784,5857,5863,353] TTGGGAGCCTGCCCAGGTTTTTGCTGGTACCAGGCTAAGTAGCTGCTAACACTCTGACTGGCCCGGCAGGTGATGGTGACTTTTTCCTCCTGAGACAAGGAGAGGGAGGCTGGAGACTGTGTCATCACGATTTCTCCGGTGATATCTGGGAGCCAGAGTAACAGAAGGCAGAGAAGGCGAGCTGGGGCTTCCATGGCTCACTCTGTGTCCTAACTGAGGCAGATCTCCCCCAGAGCACTGACCCAGCACTGATATGGGCTCTGGAGAGAAGAGTTTGCTAGGAGGAACATGCAAAGCAGCTGGGGAGGGGCATCTGGGCTTTCAGTTGCAGAGACCATTCACCTCCTCTTCTCTGCACTTGAGCAACCCATCCCCAGGTGGTCATGTCAGAAGACGCCTGGAG【左右滑动查看完整信息】
0 评论