public void setSamplesPosition(Map<String, Integer> samplesPosition) { setSamplesPosition(samplesPosition, true); }
public void setSortedSamplesPosition(LinkedHashMap<String, Integer> samplesPosition) { setSamplesPosition(samplesPosition, false); }
@Override protected void parseSplitSampleData(StudyEntry variant, VariantFileMetadata fileMetadata, String[] fields, String reference, String[] alternateAlleles) throws NonStandardCompliantSampleField { // Nothing to do variant.setSamplesPosition(Collections.emptyMap()); }
entry.setSamplesPosition(Collections.emptyMap()); return; entry.setSamplesPosition(fileMetadata.getSamplesPosition());
private void fillStudyEntryFields(StudyEntry study, LinkedHashMap<String, Integer> samplesPositionToReturn, List<String> extraFields, List<List<String>> samplesData, boolean excludeGenotypes) { if (study != null) { //Set FORMAT if (extraFields.isEmpty()) { if (excludeGenotypes) { study.setFormat(Collections.emptyList()); } else { study.setFormat(Collections.singletonList("GT")); } } else { List<String> format = new ArrayList<>(1 + extraFields.size()); if (!excludeGenotypes) { format.add("GT"); } format.addAll(extraFields); study.setFormat(format); } //Set Samples Position study.setSamplesPosition(samplesPositionToReturn); //Set Samples Data study.setSamplesData(samplesData); } }
public static Variant addGTAndFilter(Variant var, String gt, String filter) { StudyEntry se = var.getStudy("1"); se.setSamplesPosition(Collections.singletonMap("1", 0)); se.setFormat(Arrays.asList(GENOTYPE_KEY, GENOTYPE_FILTER_KEY)); se.setSamplesData(Collections.singletonList(Arrays.asList(gt, filter))); return var; }
public static Variant addGT(Variant var, String gt) { StudyEntry se = var.getStudy("1"); se.addFormat("GT"); se.getFormatPositions(); se.setSamplesPosition(Collections.singletonMap("1", 0)); // se.setFormat(Collections.singletonList("GT")); se.setSamplesData(Collections.singletonList(Collections.singletonList(gt))); return var; }
studyEntry.setSamplesPosition(samplePositions); BiFunction<String, String, String> getSampleData = studyEntry::getSampleData;
/** * Create an empty Variant (position, ref, alt) from a template with basic Study information without samples. * @param target Variant to take as a template * @return Variant filled with chromosome, start, end, ref, alt, study ID and format set to GT only, BUT no samples. */ public Variant createFromTemplate(Variant target) { Variant var = new Variant(target.getChromosome(), target.getStart(), target.getEnd(), target.getReference(), target.getAlternate()); var.setType(target.getType()); for(StudyEntry tse : target.getStudies()){ StudyEntry se = new StudyEntry(tse.getStudyId()); se.setFiles(Collections.singletonList(new FileEntry("", "", new HashMap<>()))); se.setFormat(Arrays.asList(getGtKey(), getFilterKey())); se.setSamplesPosition(new HashMap<>()); se.setSamplesData(new ArrayList<>()); var.addStudyEntry(se); } return var; }
mainVariantNew = var; StudyEntry se = new StudyEntry(studyId.toString(), new LinkedList<>(), format); se.setSamplesPosition(new HashMap<>()); var.addStudyEntry(se); variant.getStudies().get(0).setSamplesPosition(getSamplesPosition(fileId)); variantsPerFile.get(fileId).add(variant); ids.addAll(variant.getIds()); mainVariantNew.getAlternate()); StudyEntry se = new StudyEntry(studyIdStr, loadedSecondaryAlternates, format); se.setSamplesPosition(Collections.emptyMap()); mainVariantNew.addStudyEntry(se);
studyEntry.setSamplesPosition(samplePosition);
variant.getStudies().get(0).setSamplesPosition(getSamplesPosition(fileId)); List<AlternateCoordinate> fileAlternates = variant.getStudies().get(0).getSecondaryAlternates(); if (!alternates.isEmpty() && !alternates.equals(fileAlternates)) { variant.getAlternate()); StudyEntry studyEntry = new StudyEntry(studyIdStr, alternates, format); studyEntry.setSamplesPosition(Collections.emptyMap()); templateVariant.addStudyEntry(studyEntry);
se.setStudyId(vse.getStudyId()); if (null != vse.getSamplesPosition()) { se.setSamplesPosition(new HashMap<>(vse.getSamplesPosition())); } else { se.setSamplesPosition(new HashMap<>());
v1.setStudies(Collections.singletonList(se)); se.setFormat(Arrays.asList(GENOTYPE_KEY, GENOTYPE_FILTER_KEY)); se.setSamplesPosition(asMap("S1", 0)); se.setSamplesData(Collections.singletonList(Arrays.asList("1/2", "LowGQXHetDel"))); se.getSecondaryAlternates().add(new AlternateCoordinate(null, null, 328, "CTT", "CTTTC", INDEL)); se.setFiles(Collections.singletonList(new FileEntry("1", "", new HashMap<>()))); v2.setStudies(Collections.singletonList(se)); se.setSamplesPosition(asMap("S1", 0)); se.setFormat(Arrays.asList(GENOTYPE_KEY, GENOTYPE_FILTER_KEY)); se.setSamplesData(Collections.singletonList(Arrays.asList("0/1", "PASS")));
normalizedEntry.setSamplesPosition(entry.getSamplesPosition()); normalizedEntry.setFormat(entry.getFormat());
public Variant convert(VcfSliceProtos.VcfRecord vcfRecord, String chromosome, int slicePosition) { int start = getStart(vcfRecord, slicePosition); int end = getEnd(vcfRecord, slicePosition); Variant variant = new Variant(chromosome, start, end, vcfRecord.getReference(), vcfRecord.getAlternate()); variant.setType(getVariantType(vcfRecord.getType())); variant.setIds(vcfRecord.getIdNonDefaultList()); variant.resetLength(); FileEntry fileEntry = new FileEntry(); fileEntry.setFileId(fileId); Map<String, String> attributes = getFileAttributes(vcfRecord); fileEntry.setAttributes(attributes); fileEntry.setCall(vcfRecord.getCall().isEmpty() ? null : vcfRecord.getCall()); if (vcfRecord.getType().equals(VariantProto.VariantType.NO_VARIATION)) { attributes.put("END", Integer.toString(end)); } StudyEntry studyEntry = new StudyEntry(studyId); studyEntry.setFiles(Collections.singletonList(fileEntry)); studyEntry.setFormat(getFormat(vcfRecord)); studyEntry.setSamplesData(getSamplesData(vcfRecord, studyEntry.getFormatPositions())); studyEntry.setSamplesPosition(retrieveSamplePosition()); studyEntry.getFormatPositions(); // Initialize the map List<VariantProto.AlternateCoordinate> alts = vcfRecord.getSecondaryAlternatesList(); studyEntry.setSecondaryAlternates(getAlternateCoordinates(alts)); variant.addStudyEntry(studyEntry); studyEntry.getFormatPositions(); // Initialize the map return variant; }