How to handle Reverse complement in De-Bruijn Graph
Entering edit mode
6.1 years ago
kshitijtayal ▴ 40

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 

Assembly next-gen genome • 2.5k views
Entering edit mode
6.1 years ago
Rob 5.0k

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.

Entering edit mode

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?


Login before adding your answer.

Traffic: 2044 users visited in the last hour
Help About
Access RSS

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6