The current GATK version is 3.7-0
Examples: Monday, today, last week, Mar 26, 3/26/04

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Powered by Vanilla. Made with Bootstrap.
GATK 3.7 is here! Be sure to read the Version Highlights and optionally the full Release Notes.
Register now for the upcoming GATK Best Practices workshop, Feb 20-22 in Leuven, Belgium. Open to all comers! More info and signup at

Refering to genotype-level variables in VariantEval

yfarjounyfarjoun Broad InstituteDev Posts: 55
edited December 2012 in Ask the GATK team

While running VariantEval, I'm trying to stratify by a JexlExpression by setting using

-ST Sample -ST JexlExpression -select "GQ>20"

This fails with a "variable does not exist" error despite the GQ existing in all genotypes in the vcf. Looking at the code it seems that the pathway that loads the JexlExpression in the VariantEval class specifically does not provide the genotype as context (only the VariantContext) and thus, the context for the Jexl does not include GT and the error is produced.

My question is: Is this a feature or a bug? It seems possible to add the genotype (when the VC only has one, or loop over the genotypes and either OR or AND the results (perhaps another input similar to -isr?), but perhaps I'm missing something subtle?

Would you like this behavior or are you happy with the current operation of jexlExpression?



  • mmterpstrammterpstra NetherlandsMember Posts: 41
    edited December 2013

    maybe you can specify for each "sample":
    -ST Sample -ST JexlExpression -select "vc.getGenotype('sample').hasAttribute('GQ') && vc.getGenotype('sample').getAttribute('GQ')"
    Although I did not test this myselfs and the vc.getGenotype('sample').hasAttribute('GQ') && " part is optional. this is a test for undefined values.

    Good luck!

Sign In or Register to comment.