# Purpose: refactoring. # Create on 10 Aug 2019 by Hui Lan def make_gene_name_AGI_map_dict(fname): ''' A dictionary that maps gene id to gene name, and gene name to gene id. fname is ../Data/information/AGI-to-gene-names_v2.txt ''' d = {} f = open(fname) for line in f: line = line.strip() lst = line.split() agi = lst[0].upper() name_string = lst[1].upper() d[agi] = name_string for name in name_string.split(';'): if not name in d: d[name] = agi f.close() return d def get_gene_name(gene_id, agi2name_dict): if gene_id in agi2name_dict and agi2name_dict[gene_id] != gene_id: gene_name = agi2name_dict[gene_id] else: gene_name = '.' return gene_name