def __init__(self, var_template: dict, transcript: Transcript): try: Variant.__init__(self, var_template, transcript) self.chrom = self.transcript.get_chr() self.pos = self.impact["START"] self.end = self.impact["END"] self.copy_change = self.impact["COPY_CHANGE"] self.check_cnv() self.ref = self.get_anchor_position() if self.copy_change < 0: # deletion self.alt = "<DEL>" else: self.alt = "<DUP:TANDEM>" self.id = "CNV_" + str(self.pos) except Exception as e: raise (e)
def __init__(self, var_template: dict, transcript: Transcript): try: Variant.__init__(self, var_template, transcript) self.element = self.impact["ELEMENT"] self.pos = self.impact["START"] self.check_mei() # make mei region_range = self.get_region_range() if self.pos == "ANY": # pick any position within the ranges self.pos = random.choice(region_range) self.id = "_".join(["mei", str(self.pos+1), self.element]) self.ref = self.get_seq(self.transcript.chrom, self.pos, self.pos+1, self.transcript.genome) self.alt = "<INS:MEI:"+self.element+">" self.zygosity = var_template["ZYGOSITY"] except Exception as e: raise(e)
def __init__(self, var_template: dict, transcript: Transcript): try: Variant.__init__(self, var_template, transcript) self.id = self.impact["CLINVAR_ID"] clinvar = get_clinvar(self.transcript.get_genome(), self.id) if clinvar != []: self.pos = clinvar['start'] self.ref = clinvar['qualifiers']['ref'] self.alt = clinvar['qualifiers']['alt'] else: # no valid clinvar result raise ValueError("type must be CLINVAR_ID") if self.type != "CLINVAR": # check type raise ValueError("type must be CLINVAR") if (len(self.ref) > 1): # check location self.check_location(self.pos, self.pos + len(self.ref)) elif (len(self.ref) == 1): self.check_location(self.pos) except Exception as e: raise (e)
def __init__(self, var_template, transcript: Transcript): """ initialize snv variant """ try: Variant.__init__(self, var_template, transcript) self.snv_type = self.impact["SNV_TYPE"] self.pos = self.impact["START"] self.check_snv() if self.region == "CODING": if self.pos == "ANY": var_dict = self.get_random_coding_SNV() else: var_dict = self.get_directed_coding_SNV(self.pos) else: var_dict = self.get_non_coding_SNV( ) # just make change to this if var_dict == False: raise Exception("Specified SNV cannot be made") self.pos = var_dict["pos"] self.ref = str(var_dict["ref"]) self.alt = str(var_dict["alt"]) except Exception as e: raise (e)
def __init__(self, var_template, transcript: Transcript): try: Variant.__init__(self, var_template, transcript) self.chrom = self.transcript.get_chr() STR = get_str(self.transcript.get_genome(), int(self.impact["STR_ID"])) self.start = int(STR["start"]) self.end = int(STR["end"]) self.length = self.impact["LENGTH"] self.motif = STR["qualifiers"]["motif"] self.check_str() # get deletion/insersion if self.length > 0: # insersion var_dict = self.get_expantion() if self.length < 0: # deletion var_dict = self.get_retraction() self.pos = var_dict["pos"] self.ref = str(var_dict["ref"]) self.alt = str(var_dict["alt"]) self.id = "_".join(["str", str(self.pos), str(self.length)]) except Exception as e: raise (e)