This is a test version of Biostars. For the public version, visit https://www.biostars.org.
How to handle Reverse complement in De-Bruijn Graph

I am trying to do denovo assembly using De Bruijn Graph. What are the different ways by which I can handle/consider reverse complements reads while constructing de Bruijn graph

next-gen assembly genome

1 answer

The standard methodology is to associate a single de Bruijn graph node with both a k-mer and its reverse complement. If you take a look at e.g. GATB's excellent implementation, you'll see that this is how they handle it. The problem is that when processing sequencing reads, you really have no idea what strand a read was drawn from, and so you don't really have a good way to distinguish between the two. It's also worth noting that one typically builds de Bruijn graphs with only odd-sized k-mers. This prevents the scenario where a k-mer is its own reverse-complement.

Many thanks for the prompt reply. After reading your reply , one more question arises in mind that if every graph node has two values then which value to take in case of Eulerian walk ? I was wondering if there are any existing tools for viewing a de Bruijn graph from raw reads?

Log in to answer this question.