diff --git a/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextUtils.java b/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextUtils.java index e3abd7547..881ebabae 100755 --- a/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextUtils.java +++ b/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextUtils.java @@ -249,6 +249,8 @@ public class VariantContextUtils { public static double computeHardyWeinbergPvalue(VariantContext vc) { + if ( vc.getChromosomeCount() == 0 ) + return 0.0; return HardyWeinbergCalculation.hwCalculate(vc.getHomRefCount(), vc.getHetCount(), vc.getHomVarCount()); } diff --git a/java/src/org/broadinstitute/sting/playground/gatk/walkers/variantstovcf/PlinkToVCF.java b/java/src/org/broadinstitute/sting/playground/gatk/walkers/variantstovcf/PlinkToVCF.java index df971cced..f94cd3c00 100644 --- a/java/src/org/broadinstitute/sting/playground/gatk/walkers/variantstovcf/PlinkToVCF.java +++ b/java/src/org/broadinstitute/sting/playground/gatk/walkers/variantstovcf/PlinkToVCF.java @@ -158,12 +158,12 @@ public class PlinkToVCF extends RodWalker { double hetProp = (double)vContext.getHetCount() / (double)vContext.getNSamples(); double homVarProp = (double)vContext.getHomVarCount() / (double)vContext.getNSamples(); - if ( hwScore > maxHardy ) { - record.setFilterString("HardyWeinbergViolation"); - numHWViolations++; - } else if ( noCallProp > maxNoCall ) { + if ( noCallProp > maxNoCall ) { record.setFilterString("HighNoCallRate"); numNoCallViolations++; + } else if ( hwScore > maxHardy ) { + record.setFilterString("HardyWeinbergViolation"); + numHWViolations++; } else if ( homVarProp > maxHomNonref) { record.setFilterString("TooManyHomVars"); numHomVarViolations++; @@ -183,6 +183,9 @@ public class PlinkToVCF extends RodWalker { infoMap.put(VCFRecord.ALLELE_NUMBER_KEY, String.format("%d", vContext.getChromosomeCount())); record.addInfoFields(infoMap); + // add the id + record.setID(plinkRod.getVariantName()); + return record; }