-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathutil.py
More file actions
39 lines (32 loc) · 994 Bytes
/
util.py
File metadata and controls
39 lines (32 loc) · 994 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import json
from config import study_dir
conversion_list = [
"Gene_stable_ID",
"Gene_stable_ID_version",
"Transcript_stable_ID",
"Transcript_stable_ID_version",
"Gene_symbol",
]
def get_gene_data():
with open(f"{study_dir}/gene_conversion.json", "r") as infile:
gene_data = json.load(infile)
return gene_data
# gene_data = get_gene_data()
def convert_gene(
id,
id_from="Transcript_stable_ID_version",
id_to="Gene_symbol",
gene_data=get_gene_data(),
):
"""
Will return the gene symbol when given a Transcript_stable_ID_version if
able to resolve Transcript_stable_ID_version to gene symbol.
Otherwise returns the Transcript_stable_ID_version.
"""
if id_from not in conversion_list or id_to not in conversion_list:
return None
try:
index = gene_data[id_from].index(id)
except:
index = None
return gene_data[id_to][index] if index else id