Adding Het/Hom ratio to the temp per sample metrics. Because I'm in a generous mood tonight, I'm going ahead and fixing the paths for the classes I'm touching...
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@4713 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
parent
cff7c6ddce
commit
b9a59ea54f
|
|
@ -14,14 +14,12 @@ import org.broadinstitute.sting.gatk.contexts.AlignmentContext;
|
||||||
* This software is supplied without any warranty or guaranteed support whatsoever. Neither
|
* This software is supplied without any warranty or guaranteed support whatsoever. Neither
|
||||||
* the Broad Institute nor MIT can be responsible for its use, misuse, or functionality.
|
* the Broad Institute nor MIT can be responsible for its use, misuse, or functionality.
|
||||||
*/
|
*/
|
||||||
abstract class VariantEvaluator {
|
public abstract class VariantEvaluator {
|
||||||
// protected boolean accumulateInterestingSites = false, printInterestingSites = false;
|
// protected boolean accumulateInterestingSites = false, printInterestingSites = false;
|
||||||
// protected String interestingSitePrefix = null;
|
// protected String interestingSitePrefix = null;
|
||||||
protected boolean processedASite = false;
|
// protected boolean processedASite = false;
|
||||||
// protected List<VariantContext> interestingSites = new ArrayList<VariantContext>();
|
// protected List<VariantContext> interestingSites = new ArrayList<VariantContext>();
|
||||||
|
|
||||||
public abstract String getName();
|
|
||||||
|
|
||||||
// do we want to keep track of things that are interesting
|
// do we want to keep track of things that are interesting
|
||||||
// public void accumulateInterestingSites(boolean enable) { accumulateInterestingSites = enable; }
|
// public void accumulateInterestingSites(boolean enable) { accumulateInterestingSites = enable; }
|
||||||
// public void printInterestingSites(String prefix) { printInterestingSites = true; interestingSitePrefix = prefix; }
|
// public void printInterestingSites(String prefix) { printInterestingSites = true; interestingSitePrefix = prefix; }
|
||||||
|
|
@ -35,6 +33,8 @@ abstract class VariantEvaluator {
|
||||||
// System.out.printf("%40s %s%n", interestingSitePrefix, why);
|
// System.out.printf("%40s %s%n", interestingSitePrefix, why);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
public abstract String getName();
|
||||||
|
|
||||||
protected VariantEvalWalker veWalker = null;
|
protected VariantEvalWalker veWalker = null;
|
||||||
public VariantEvaluator(VariantEvalWalker parent) {
|
public VariantEvaluator(VariantEvalWalker parent) {
|
||||||
veWalker = parent;
|
veWalker = parent;
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,12 @@
|
||||||
package org.broadinstitute.sting.gatk.walkers.varianteval;
|
package org.broadinstitute.sting.oneoffprojects.walkers.varianteval;
|
||||||
|
|
||||||
import org.broad.tribble.util.variantcontext.Genotype;
|
import org.broad.tribble.util.variantcontext.Genotype;
|
||||||
import org.broad.tribble.util.variantcontext.VariantContext;
|
import org.broad.tribble.util.variantcontext.VariantContext;
|
||||||
import org.broadinstitute.sting.gatk.contexts.AlignmentContext;
|
import org.broadinstitute.sting.gatk.contexts.AlignmentContext;
|
||||||
import org.broadinstitute.sting.gatk.contexts.ReferenceContext;
|
import org.broadinstitute.sting.gatk.contexts.ReferenceContext;
|
||||||
import org.broadinstitute.sting.gatk.refdata.RefMetaDataTracker;
|
import org.broadinstitute.sting.gatk.refdata.RefMetaDataTracker;
|
||||||
import org.broadinstitute.sting.gatk.walkers.varianteval.VariantEvaluatorBySample;
|
import org.broadinstitute.sting.gatk.walkers.varianteval.*;
|
||||||
import org.broadinstitute.sting.utils.report.tags.Analysis;
|
import org.broadinstitute.sting.utils.report.tags.Analysis;
|
||||||
import org.broadinstitute.sting.gatk.walkers.varianteval.SampleDataPoint;
|
|
||||||
import org.broadinstitute.sting.gatk.walkers.varianteval.VariantEvaluatorBySample;
|
|
||||||
import org.broadinstitute.sting.utils.report.tags.Analysis;
|
|
||||||
import org.broadinstitute.sting.utils.report.tags.DataPoint;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package org.broadinstitute.sting.gatk.walkers.varianteval;
|
package org.broadinstitute.sting.oneoffprojects.walkers.varianteval;
|
||||||
|
|
||||||
import org.broad.tribble.util.variantcontext.Genotype;
|
import org.broad.tribble.util.variantcontext.Genotype;
|
||||||
import org.broad.tribble.util.variantcontext.VariantContext;
|
import org.broad.tribble.util.variantcontext.VariantContext;
|
||||||
|
|
@ -6,10 +6,8 @@ import org.broadinstitute.sting.gatk.contexts.AlignmentContext;
|
||||||
import org.broadinstitute.sting.gatk.contexts.ReferenceContext;
|
import org.broadinstitute.sting.gatk.contexts.ReferenceContext;
|
||||||
import org.broadinstitute.sting.gatk.contexts.variantcontext.VariantContextUtils;
|
import org.broadinstitute.sting.gatk.contexts.variantcontext.VariantContextUtils;
|
||||||
import org.broadinstitute.sting.gatk.refdata.RefMetaDataTracker;
|
import org.broadinstitute.sting.gatk.refdata.RefMetaDataTracker;
|
||||||
import org.broadinstitute.sting.gatk.walkers.varianteval.SampleDataPoint;
|
import org.broadinstitute.sting.gatk.walkers.varianteval.*;
|
||||||
import org.broadinstitute.sting.gatk.walkers.varianteval.VariantEvaluatorBySample;
|
|
||||||
import org.broadinstitute.sting.utils.report.tags.Analysis;
|
import org.broadinstitute.sting.utils.report.tags.Analysis;
|
||||||
import org.broadinstitute.sting.utils.report.tags.DataPoint;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -26,6 +24,7 @@ public class SimpleMetricsBySample extends VariantEvaluatorBySample {
|
||||||
List<SampleDataPoint> points = new ArrayList(3);
|
List<SampleDataPoint> points = new ArrayList(3);
|
||||||
points.add(new CountSNPsSample());
|
points.add(new CountSNPsSample());
|
||||||
points.add(new TiTvRatioSample());
|
points.add(new TiTvRatioSample());
|
||||||
|
points.add(new HetHomRatioSample());
|
||||||
points.add(new CompOverlapSample());
|
points.add(new CompOverlapSample());
|
||||||
|
|
||||||
return points;
|
return points;
|
||||||
|
|
@ -92,6 +91,32 @@ class TiTvRatioSample extends SampleDataPoint {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class HetHomRatioSample extends SampleDataPoint {
|
||||||
|
int nHet = 0;
|
||||||
|
int nHomVar = 0;
|
||||||
|
|
||||||
|
public HetHomRatioSample() {
|
||||||
|
super("HetHomRatio");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void update2(VariantContext vc, VariantContext comp, RefMetaDataTracker tracker, ReferenceContext ref, AlignmentContext context) {
|
||||||
|
if ( vc != null ) {
|
||||||
|
Genotype g = vc.getGenotype(sampleName);
|
||||||
|
if ( g != null ) {
|
||||||
|
if ( g.isHet() ) {
|
||||||
|
nHet++;
|
||||||
|
} else if (g.isHomVar()) {
|
||||||
|
nHomVar++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return String.format("%.2f", ( ((double) nHet )/ nHomVar));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class CompOverlapSample extends SampleDataPoint {
|
class CompOverlapSample extends SampleDataPoint {
|
||||||
int nOverlap = 0;
|
int nOverlap = 0;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,11 @@
|
||||||
package org.broadinstitute.sting.gatk.walkers.varianteval;
|
package org.broadinstitute.sting.oneoffprojects.walkers.varianteval;
|
||||||
|
|
||||||
import org.broad.tribble.util.variantcontext.Genotype;
|
import org.broad.tribble.util.variantcontext.Genotype;
|
||||||
import org.broad.tribble.util.variantcontext.VariantContext;
|
import org.broad.tribble.util.variantcontext.VariantContext;
|
||||||
import org.broadinstitute.sting.gatk.contexts.AlignmentContext;
|
import org.broadinstitute.sting.gatk.contexts.AlignmentContext;
|
||||||
import org.broadinstitute.sting.gatk.contexts.ReferenceContext;
|
import org.broadinstitute.sting.gatk.contexts.ReferenceContext;
|
||||||
import org.broadinstitute.sting.gatk.refdata.RefMetaDataTracker;
|
import org.broadinstitute.sting.gatk.refdata.RefMetaDataTracker;
|
||||||
|
import org.broadinstitute.sting.gatk.walkers.varianteval.*;
|
||||||
import org.broadinstitute.sting.utils.report.tags.DataPoint;
|
import org.broadinstitute.sting.utils.report.tags.DataPoint;
|
||||||
import org.broadinstitute.sting.utils.report.utils.TableType;
|
import org.broadinstitute.sting.utils.report.utils.TableType;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue