def get_variants_from_variant_tuples(project, variant_tuples): datastore = get_datastore(project) population_slugs = project.get_reference_population_slugs() variant_tuples_by_family_id = {} for xpos, ref, alt, family_id in variant_tuples: if family_id not in variant_tuples_by_family_id: variant_tuples_by_family_id[family_id] = [] variant_tuples_by_family_id[family_id].append((xpos, ref, alt)) variants = [] for family_id, variant_tuples in variant_tuples_by_family_id.items(): variants_for_family = datastore.get_multiple_variants( project.project_id, family_id, variant_tuples) for (xpos, ref, alt), variant in zip(variant_tuples, variants_for_family): if not variant: variant = Variant(xpos, ref, alt) get_annotator().annotate_variant(variant, population_slugs) variant.set_extra('family_id', family_id) variant.set_extra('project_id', project.project_id) variants.append(variant) return variants
def get_variants_from_variant_tuples(project, variant_tuples): variants = [] for t in variant_tuples: variant = get_datastore(project.project_id).get_single_variant( project.project_id, t[3], t[0], t[1], t[2]) if not variant: variant = Variant(t[0], t[1], t[2]) get_annotator().annotate_variant( variant, project.get_reference_population_slugs()) variant.set_extra('family_id', t[3]) variant.set_extra('project_id', project.project_id) variants.append(variant) return variants
def get_variants_from_note_tuples(project, note_tuples): variants = [] for note_t in note_tuples: variant = get_datastore(project.project_id).get_single_variant( project.project_id, note_t[3], note_t[0], note_t[1], note_t[2] ) if not variant: variant = Variant(note_t[0], note_t[1], note_t[2]) get_annotator().annotate_variant(variant, project.get_reference_population_slugs()) # variant.annotation = get_annotator().get_variant(note_t[0], note_t[1], note_t[2]) variant.set_extra("family_id", note_t[3]) variant.set_extra("project_id", project.project_id) variants.append(variant) return variants
def get_variants_from_variant_tuples(project, variant_tuples): variants = [] for t in variant_tuples: variant = get_datastore(project.project_id).get_single_variant( project.project_id, t[3], t[0], t[1], t[2] ) if not variant: variant = Variant(t[0], t[1], t[2]) get_annotator().annotate_variant(variant, project.get_reference_population_slugs()) variant.set_extra('family_id', t[3]) variant.set_extra('project_id', project.project_id) variants.append(variant) return variants
def get_variants_from_variant_tuples(project, variant_tuples, user=None): datastore = get_datastore(project) population_slugs = project.get_reference_population_slugs() variant_tuples_by_family_id = {} for xpos, ref, alt, family_id in variant_tuples: if family_id not in variant_tuples_by_family_id: variant_tuples_by_family_id[family_id] = [] variant_tuples_by_family_id[family_id].append((xpos, ref, alt)) variants = [] for family_id, variant_tuples in variant_tuples_by_family_id.items(): variants_for_family = datastore.get_multiple_variants( project.project_id, family_id, variant_tuples, user=user ) for (xpos, ref, alt), variant in zip(variant_tuples, variants_for_family): if not variant: variant = Variant(xpos, ref, alt) get_annotator().annotate_variant(variant, population_slugs) variant.set_extra('created_variant', True) variant.set_extra('family_id', family_id) variant.set_extra('project_id', project.project_id) variants.append(variant) return variants