public static boolean isRegionAfterVariantStart(int start, int end, Variant variant) { int pos = Math.min(start, end); int variantPos = Math.min(variant.getStart(), variant.getEnd()); return pos > variantPos; }
private static boolean isInsertionCovered(Variant insertion, Variant notInsertion) { if (!isInsertion(insertion)) { throw new IllegalStateException("Variable insertion is not an Insertion:" + insertion); } if (isInsertion(notInsertion)) { throw new IllegalStateException("Variable notInsertion is an Insertion:" + notInsertion); } Integer start = notInsertion.getStart(); Integer end = notInsertion.getEnd(); return start <= insertion.getStart() && insertion.getStart() <= end && start <= insertion.getEnd() && insertion.getEnd() <= end; }
private boolean potentialCodingSNVOverlap(Variant variant1, Variant variant2) { return Math.abs(variant1.getStart() - variant2.getStart()) < 3 && variant1.getChromosome().equals(variant2.getChromosome()) && variant1.getType().equals(VariantType.SNV) && variant2.getType().equals(VariantType.SNV) && samePhase(variant1, variant2); }
private Region startBreakpointToRegion(Variant variant) { if (imprecise && variant.getSv() != null) { return new Region(variant.getChromosome(), variant.getSv().getCiStartLeft() != null ? variant.getSv().getCiStartLeft() - svExtraPadding : variant.getStart(), variant.getSv().getCiStartRight() != null ? variant.getSv().getCiStartRight() + svExtraPadding : variant.getStart()); } else { return new Region(variant.getChromosome(), variant.getStart(), variant.getStart()); } }
public static boolean isSameVariant(Variant a, AlternateCoordinate b){ return StringUtils.equals(a.getChromosome(), b.getChromosome()) && a.getStart().equals(b.getStart()) && a.getEnd().equals(b.getEnd()) && StringUtils.equals(a.getReference(), b.getReference()) && StringUtils.equals(a.getAlternate(), b.getAlternate()); }
private Put buildSampleIndexPut(Variant variant, Put put, Integer sampleId, String gt) { Put sampleIndexPut = new Put( SampleIndexConverter.toRowKey(sampleId, variant.getChromosome(), variant.getStart()), put.getTimeStamp()); sampleIndexPut.addColumn(helper.getColumnFamily(), SampleIndexConverter.toPendingColumn(variant, gt), null); return sampleIndexPut; }
public VariantStatsWrapper(Variant variant, Map<String, VariantStats> cohortStats) { this.chromosome = variant.getChromosome(); this.start = variant.getStart(); this.end = variant.getEnd(); this.reference = variant.getReference(); this.alternate = variant.getAlternate(); this.sv = variant.getSv(); this.cohortStats = cohortStats; }
public static Variant asVariant(Variant v) { Variant variant = new Variant(v.getChromosome(), v.getStart(), v.getEnd(), v.getReference(), v.getAlternate(), v.getStrand()); variant.setType(v.getType()); return variant; }
public static Matcher<VariantAnnotation> at(final String variant) { Variant v = new Variant(variant); return allOf(with("chromosome", VariantAnnotation::getChromosome, is(v.getChromosome())), with("position", VariantAnnotation::getStart, is(v.getStart())), with("reference", VariantAnnotation::getReference, is(v.getReference())), with("alternate", VariantAnnotation::getAlternate, is(v.getAlternate())) ); }
@Test public void resolveSameVariantWithSecAlt() throws Exception { Variant a = getVariant("2:10048155:TCTTTTTTTT:AC", "PASS", "220", "1/2"); Variant b = getVariant("2:10048155:TCTTTTTTTT:-", "PASS", "220", "2/1"); a.getStudies().get(0).getSecondaryAlternates().add(new AlternateCoordinate("2", b.getStart(), b.getEnd(), b.getReference(), b.getAlternate(), INDEL)); a.getStudies().get(0).getFiles().get(0).setCall("10048155:TTCTTTTTTTT:TAC,T:0"); b.getStudies().get(0).getSecondaryAlternates().add(new AlternateCoordinate("2", a.getStart(), a.getEnd(), a.getReference(), a.getAlternate(), INDEL)); b.getStudies().get(0).getFiles().get(0).setCall("10048155:TTCTTTTTTTT:TAC,T:1"); Collection<Variant> resolved = new VariantLocalConflictResolver().resolveConflicts(Arrays.asList(a, b)); assertEquals(1, resolved.size()); }
protected static VariantAnnotation newVariantAnnotation(Variant variant) { VariantAnnotation va; va = new VariantAnnotation(); va.setChromosome(variant.getChromosome()); va.setReference(variant.getReference()); va.setAlternate(variant.getAlternate()); va.setStart(variant.getStart()); va.setEnd(variant.getEnd()); return va; }
@Test public void testOverlapsWith() { assertTrue(FillGapsTask.overlapsWith(new Variant("1:100:T:-"), "1", 100, 100)); Variant variant = new Variant("1:100:-:T"); assertTrue(FillGapsTask.overlapsWith(variant, "1", variant.getStart(), variant.getEnd())); variant = new Variant("1:100:-:TTTTT"); assertFalse(FillGapsTask.overlapsWith(variant, "1", 102, 102)); }
protected void assertValidStats(Variant variant, VariantStats variantStats) { assertNotEquals("Stats seem with no valid values, for instance (chr=" + variant.getChromosome() + ", start=" + variant.getStart() + ", ref=" + variant.getReference() + ", alt=" + variant.getAlternate() + "), maf=" + variantStats.getMaf(), -1, variantStats.getMaf(), 0.001); } }
private Variant convert(org.opencb.biodata.models.variant.Variant var) { Variant build = Variant.newBuilder() .setChromosome(var.getChromosome()) .setStart(var.getStart()) .setEnd(var.getEnd()) .setLength(var.getLength()) .setReference(var.getReference()) .setAlternate(var.getAlternate()) .addAllIds(var.getIds()) .build(); return build; }
private static AlternateCoordinate copyAlt(Variant var, AlternateCoordinate orig) { AlternateCoordinate copy = new AlternateCoordinate(); copy.setChromosome(orig.getChromosome() == null ? var.getChromosome() : orig.getChromosome()); copy.setStart(orig.getStart() == null ? var.getStart() : orig.getStart()); copy.setEnd(orig.getEnd() == null ? var.getEnd() : orig.getEnd()); copy.setReference(orig.getReference() == null ? var.getReference() : orig.getReference()); copy.setAlternate(orig.getAlternate() == null ? var.getAlternate() : orig.getAlternate()); copy.setType(orig.getType() == null ? var.getType() : orig.getType()); return copy; }