Unconfigured Ad

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • mikecz
    Junior Member
    • Jan 2012
    • 5

    Trinity transcript naming

    I don't know if I am missing something obvious but I can't find an explanation anywhere as to how Trinity RNA-seq names the transcripts it derives.

    I've been noticing that when I annotate with BLAST+ most of the transcripts that start with the same number (comp#_) are annotating as the same gene (isoforms?). They will then all have different ending numbers (_seq#) and some of them have different numbers int he middle (_c#_), for example (comp2335_c1_seq1, comp2335_c1_seq2, comp2335_c1_seq3).

    Are these names derived sequentially by inchworm (comp#) chrysalis (c#) then butterfly (seq#)?

    Can anyone verify whether these would be indeed considered isoforms of single genes within a comp# group or is there something else at work here?

    Thanks,
    -Mike
  • Pseudonym
    Research Engineer
    • Jun 2011
    • 12

    #2
    You're almost correct. The names are indeed based on the algorithm, but it's not quite as simple as the inchworm number, then the chrysalis number, then the butterfly number.

    This is the basic algorithm of Trinity, assuming that you've already built a de Bruijn assembly graph (which is identical to a (k+1)-mer count):
    1. Eagerly extract contigs from the de Bruijn graph. These contigs may or may not have any relationship to "real" transcripts, they're just whatever long contiguous paths happen to be found in the graph.
    2. Find reads which justify clustering/joining ("welding" in Trinity terminology) these contigs together. A set of contigs which are believed to belong together is called a "component".
    3. Align reads to components. For each read, decide which component it's most likely to belong to.
    4. For each component, treat the reads which map to that component as a separate assembly problem. This involves constructing a new (smaller) de Bruijn graph from only those reads which belong to a component.

    The output of Inchworm is the set of contigs. The output of Chrysalis is the set of components, plus the reads which are called as belonging to those components. The output of Butterfly is the called transcripts for each component.

    When Butterfly rebuilds a graph for each component and does cleanup, it sometimes finds that the resulting graph is disconnected. This is usually because the inital contigs discovered by Inchworm were not "real" contigs. Each connected component in the rebuilt graph is called a "subcomponent".

    So the "comp" is the component, "c" is the subcomponent, and "seq" is the extracted sequence from the subcomponent.

    Trinity does not reason in terms of genes, loci and alternative splicing events. It solves a graph problem, though of course the heuristics are tuned to the needs of biology. So while it's highly likely that all the isoforms of a given gene belong to the same subcomponent, you shouldn't assume that a subcomponent is a gene.
    Last edited by Pseudonym; 04-15-2012, 05:05 PM.
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});

    Comment

    • nareshvasani
      Member
      • Apr 2013
      • 57

      #3
      Nice explaination Pseudonym...



      Originally posted by Pseudonym View Post
      You're almost correct. The names are indeed based on the algorithm, but it's not quite as simple as the inchworm number, then the chrysalis number, then the butterfly number.

      This is the basic algorithm of Trinity, assuming that you've already built a de Bruijn assembly graph (which is identical to a (k+1)-mer count):
      1. Eagerly extract contigs from the de Bruijn graph. These contigs may or may not have any relationship to "real" transcripts, they're just whatever long contiguous paths happen to be found in the graph.
      2. Find reads which justify clustering/joining ("welding" in Trinity terminology) these contigs together. A set of contigs which are believed to belong together is called a "component".
      3. Align reads to components. For each read, decide which component it's most likely to belong to.
      4. For each component, treat the reads which map to that component as a separate assembly problem. This involves constructing a new (smaller) de Bruijn graph from only those reads which belong to a component.

      The output of Inchworm is the set of contigs. The output of Chrysalis is the set of components, plus the reads which are called as belonging to those components. The output of Butterfly is the called transcripts for each component.

      When Butterfly rebuilds a graph for each component and does cleanup, it sometimes finds that the resulting graph is disconnected. This is usually because the inital contigs discovered by Inchworm were not "real" contigs. Each connected component in the rebuilt graph is called a "subcomponent".

      So the "comp" is the component, "c" is the subcomponent, and "seq" is the extracted sequence from the subcomponent.

      Trinity does not reason in terms of genes, loci and alternative splicing events. It solves a graph problem, though of course the heuristics are tuned to the needs of biology. So while it's highly likely that all the isoforms of a given gene belong to the same subcomponent, you shouldn't assume that a subcomponent is a gene.

      Comment

      Latest Articles

      Collapse

      • GATTACAT
        Reply to Nine Things a Sample Prep Scientist Thinks About Before Sequencing
        by GATTACAT
        Love this - good data definitely starts from good input, and poor input can only give relatively poor data. I particularly like the mention of Nanodrop/absorbance based methods for quantification. It's such a toss up if you'll get an accurate reading or what amounts to a randomly generated number, and a lot of library/sequencing related issues can be traced back to poor quant.
        07-01-2026, 11:43 AM
      • SEQadmin2
        Nine Things a Sample Prep Scientist Thinks About Before Sequencing
        by SEQadmin2


        I’m not a sequencing expert. I’m a purification scientist who uses NGS to evaluate workflows my group develops. With this perspective, we think about the sample first and the NGS workflow second. The sequencer is an exceptionally honest reporter, but it can only report on what you give it, so whether you get clean, interpretable data from an NGS workflow is largely determined before you begin.

        Here are nine questions we think about, in roughly the order they matter, before...
        06-18-2026, 07:11 AM

      ad_right_rmr

      Collapse

      News

      Collapse

      Topics Statistics Last Post
      Started by SEQadmin2, 07-02-2026, 11:08 AM
      0 responses
      25 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-30-2026, 05:37 AM
      0 responses
      24 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-26-2026, 11:10 AM
      0 responses
      23 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-17-2026, 06:09 AM
      0 responses
      55 views
      0 reactions
      Last Post SEQadmin2  
      Working...