ReadBackedPhasing silently ignores sites with ploidy != 2
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@4272 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
parent
528f6344af
commit
248cc308b2
|
|
@ -270,18 +270,26 @@ public class ReadBackedPhasingWalker extends RodWalker<PhasingStatsAndOutput, Ph
|
|||
TreeMap<String, PhaseCounts> samplePhaseStats = new TreeMap<String, PhaseCounts>();
|
||||
for (Map.Entry<String, Genotype> sampGtEntry : sampGenotypes.entrySet()) {
|
||||
logger.debug("sample = " + sampGtEntry.getKey());
|
||||
boolean genotypesArePhased = true; // phase by default
|
||||
boolean genotypesArePhased = false; // don't phase unless we determine the phase
|
||||
|
||||
String samp = sampGtEntry.getKey();
|
||||
Genotype gt = sampGtEntry.getValue();
|
||||
|
||||
Map<String, Object> gtAttribs = null;
|
||||
List<Allele> gtAlleles = null;
|
||||
if (gt.getPloidy() != 2) {
|
||||
gtAttribs = gt.getAttributes();
|
||||
gtAlleles = gt.getAlleles();
|
||||
}
|
||||
else {
|
||||
gtAttribs = new HashMap<String, Object>(gt.getAttributes());
|
||||
BialleleSNP biall = new BialleleSNP(gt);
|
||||
HashMap<String, Object> gtAttribs = new HashMap<String, Object>(gt.getAttributes());
|
||||
|
||||
if (gt.isHet()) {
|
||||
VariantContext prevVc = prevVr.variant;
|
||||
Genotype prevGenotype = prevVc.getGenotype(samp);
|
||||
if (prevGenotype.isHet()) { //otherwise, can trivially phase
|
||||
logger.debug("NON-TRIVIALLY CARE about TOP vs. BOTTOM for: " + "\n" + biall);
|
||||
if (prevGenotype.isHet()) {
|
||||
logger.debug("Want to phase TOP vs. BOTTOM for: " + "\n" + biall);
|
||||
|
||||
List<VariantAndReads> sampleWindowVaList = new LinkedList<VariantAndReads>();
|
||||
int phasingSiteIndex = -1;
|
||||
|
|
@ -355,8 +363,10 @@ public class ReadBackedPhasingWalker extends RodWalker<PhasingStatsAndOutput, Ph
|
|||
sampPhaseCounts.numPhased++;
|
||||
}
|
||||
}
|
||||
List<Allele> phasedAll = biall.getAllelesAsList();
|
||||
Genotype phasedGt = new Genotype(gt.getSampleName(), phasedAll, gt.getNegLog10PError(), gt.getFilters(), gtAttribs, genotypesArePhased);
|
||||
gtAlleles = biall.getAllelesAsList();
|
||||
}
|
||||
|
||||
Genotype phasedGt = new Genotype(gt.getSampleName(), gtAlleles, gt.getNegLog10PError(), gt.getFilters(), gtAttribs, genotypesArePhased);
|
||||
phasedGtMap.put(samp, phasedGt);
|
||||
}
|
||||
phaseStats.addIn(new PhasingStats(samplePhaseStats));
|
||||
|
|
|
|||
Loading…
Reference in New Issue