-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcosa_compare_randoms_to_wt.py
42 lines (33 loc) · 1.09 KB
/
cosa_compare_randoms_to_wt.py
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
40
41
42
import cobra
from helper import json_load
from cosa_get_all_tcosa_reaction_ids import get_all_tcosa_reaction_ids
cobra_model = cobra.io.read_sbml_model("cosa/iML1515_TCOSA.xml")
randoms47 = json_load("cosa/results_aerobic/randoms_rand_lists.json")["47"]
num_same = 0
num_different = 0
for tcosa_reaction_id in get_all_tcosa_reaction_ids(cobra_model):
if "_VARIANT" in tcosa_reaction_id:
continue
if not "_ORIGINAL" in tcosa_reaction_id:
continue
if "_ORIGINAL_NADP" in tcosa_reaction_id:
wt_state = "NADP"
elif "_ORIGINAL_NAD" in tcosa_reaction_id:
wt_state = "NAD"
else:
print("~", tcosa_reaction_id)
continue
base_id = tcosa_reaction_id.replace(f"_ORIGINAL_{wt_state}_TCOSA", "")
randoms_statenum = randoms47[base_id]
if randoms_statenum == 0.0:
randoms_state = "NADP"
elif randoms_statenum == 1.0:
randoms_state = "NAD"
else:
input("ERROR")
if randoms_state == wt_state:
num_same += 1
else:
num_different += 1
print("Same:", num_same)
print("Different:", num_different)