in src/main/python/vcf_snpeff_annotation.py [0:0]
def variantType(region,dna,cdna,pro,info):
variant_type = 'unknown'
if pro.endswith('*'):
variant_type = 'nonsense'
elif 'nonsense' in info or 'stopgain' in info or 'Nonsense' in info or 'Stopgain' in info:
variant_type = 'nonsense'
elif 'stop_loss' in info or 'Stop_loss' in info:
variant_type = 'nonstop'
elif 'start_loss' in info or 'Start_loss' in info:
variant_type = 'start_codon_loss'
elif 'missense' in info or 'Missense' in info:
variant_type = 'missense'
elif 'fs*' in pro:
if 'ins' in dna or 'ins' in cdna:
variant_type = 'frame_shift_insertion'
elif 'del' in dna or 'del' in cdna:
variant_type = 'frame_shift_deletion'
elif 'dup' in dna or 'dup' in cdna:
variant_type = 'frame_shift_insertion'
elif 'ins' in pro:
variant_type = 'in_frame_insertion'
elif 'del' in pro:
variant_type = 'in_frame_deletion'
elif 'dup' in pro:
variant_type = 'in_frame_insertion'
elif 'splice' in info or 'Splice' in info:
variant_type = 'splice_site'
elif 'silent' in info or 'synonymous' in info or 'Silent' in info or 'Synonymous' in info:
variant_type = 'silent'
elif '3-UTR' in info or '3-UTR' in region:
variant_type = '3-UTR'
elif '5-UTR' in info or '5-UTR' in region:
variant_type = '5-UTR'
elif 'intron' in info or 'intron' in region:
variant_type = 'intron'
elif 'noncoding' in info or 'noncoding' in region:
variant_type = 'non-coding'
return variant_type