It looks like you're new here. If you want to get involved, click one of these buttons!
I'm trying to use JEXL to filter variants but something isn't working and I can't figure it out. I'm hoping someone can point me in the right direction. My VCF file contains an INFO field 1000g2012Apr_ALL. Some of the variants in my VCF have an entry for this field, some don't. I want to filter my VCF file for entries that are below a certain value or are NULL (empty).
Here's what my command looks like:
java -Xmx4G -jar GenomeAnalysisTK.jar -T SelectVariants -R hg19.fa -V my.vcf -o my.1kgfiltered.vcf -select 'vc.getAttribute("1000g2012Apr_ALL") < 0.01' -select '!vc.hasAttribute("1000g2012Apr_ALL")'
The problem is the 2nd select statement. I can't seem to get a JEXL select statement to give me the entries where 1000g2012Apr_ALL are empty. How do I accomplish this?
Geraldine_VdAuwera
Posts: 2,484 admin
Answers
-select '(!vc.hasAttribute("1000g2012Apr_ALL")) || vc.getAttribute("1000g2012Apr_ALL") < 0.01'
- Spam
- Abuse
- Troll
0 · Off Topic Disagree Agree Like WTF ·Not sure about the proper syntax, but have you tried something like -select '!(vc.hasAttribute("1000g2012Apr_ALL"))' or -select '! vc.hasAttribute("1000g2012Apr_ALL")'?
Geraldine Van der Auwera, PhD
- Spam
- Abuse
- Troll
0 · Off Topic Disagree Agree Like WTF ·Oh, well there you go, ignore my feeble attempt! (I hate JEXL)
Geraldine Van der Auwera, PhD
- Spam
- Abuse
- Troll
0 · Off Topic Disagree Agree Like WTF ·Its odd that I had to combine the two select statements to get it to work. Or perhaps maybe it was the addition of the parentheses.
- Spam
- Abuse
- Troll
0 · Off Topic Disagree Agree Like WTF ·