1
$\begingroup$

We want to compare some variant calling tools and their calls on Whole Exome Sequencing data. We will have to normalize the variants that are called (.vcf format) before comparison using for instance vt normalize or hap.py. We are comparing with a gold standard too and use hap.py for this now to get some benchmark information.

Edit: with normalization I mean representing the variants in such a way, we are able to compare them: to ensure that the representation of a variant is “parsimonious” and “left-aligned.”

I was just wondering, and I cannot find any real guidelines (yet), when we annotate using VEP, do we have to normalize before or after annotation to keep the annotation correct as well. I know VEP has some normalization functionality too see here. So might we even not need an additional normalization tool before and just let VEP do it for us?

I am just wondering about the guidelines and what what others do. Thanks in advance,

$\endgroup$
1
  • $\begingroup$ What kind of normalization are you going to do? VEP talks about normalizing variant represenations, variant names and left-aligning indels. However, all variant callers should be producing a vcf, so there is no need to normalize the names. Indels perhaps. You might want to normalize other things like variant quality but we need to understand what you mean before we can help. Can you please edit your question and clarify? $\endgroup$
    – terdon
    Commented Feb 2 at 13:35

1 Answer 1

2
$\begingroup$

If you're referring to left alignment + parsimonious representation, do it before any annotation. Most if not all annotation happens by comparing CHROM, POS and optionally REF and ALT and since vt normalize affects POS, you should do it before annotation.

I'm not sure how smart VEP is, but most annotators are simple lookup tools at least for third party databases, so they're not built to normalize while looking up.

$\endgroup$
6
  • 1
    $\begingroup$ Yes, that makes sense. And VEP has some form of normalization before annotation: here, but it seems to be more basic than a normalization tool like vt normalize. $\endgroup$
    – Dandelion
    Commented Feb 5 at 12:32
  • 1
    $\begingroup$ Yes, vt normalize and bcftools norm both preserve a record of the pre-normalization entry so data loss is avoided. I'm not sure if VEP does that or even logs it. $\endgroup$
    – Ram RS
    Commented Feb 5 at 17:33
  • $\begingroup$ Thinking a bit more about your comments ^, why would you not always normalize before annotation to be sure you would get the same results over different studies (hypothtically)? Would "the same variants" called with different callers, cause discrepencies in position and therefore annotation if you do not normalize them? Or am I missing something? $\endgroup$
    – Dandelion
    Commented Feb 7 at 15:26
  • 1
    $\begingroup$ You're asking the right question. Without normalization, certain annotations could be missed especially if POS changes post normalization. Most callers should call a variant at the same location based on an alignment, but I'm not sure if that can be taken for granted. I always decompose and normalize all my VCFs pre annotation. $\endgroup$
    – Ram RS
    Commented Feb 7 at 15:29
  • 1
    $\begingroup$ SNVs/MNVs that occur in a repeat region can confuse callers a little. One also needs to keep in mind that certain variants were named/annotated way back when and used to be called using the wrong coordinate for quite a while. I've seen this happen in old medical records, not sure how prevalent this is these days. $\endgroup$
    – Ram RS
    Commented Feb 8 at 15:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.