Skip to content

Commit 221e918

Browse files
committed
Add some old changes
1 parent 71f75a3 commit 221e918

1 file changed

Lines changed: 26 additions & 6 deletions

File tree

app/clinical_evidence/merge.py

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
"""Script for combining multiple KGX node and edge files."""
22

3+
from datetime import datetime
34
import glob
45
import json
56
import jsonlines
6-
7+
from tqdm import tqdm
78

89
if __name__ == "__main__":
9-
node_files = glob.glob("./kgx/*_nodes.jsonl")
10-
edge_files = glob.glob("./kgx/*_edges.jsonl")
10+
time = datetime.now().strftime("%Y_%m_%d")
11+
node_files = glob.glob("./kgx/full/*_nodes.jsonl")
12+
edge_files = glob.glob("./kgx/full/*_edges.jsonl")
1113

1214
node_ids = set()
1315
nodes = {}
@@ -19,7 +21,7 @@
1921
if node["id"] not in node_ids:
2022
nodes[node["id"]] = node
2123

22-
with open("nodes_merged.json", "w") as f:
24+
with open(f"kgx/nodes_merged_{time}.json", "w") as f:
2325
json.dump(nodes, f, indent=2)
2426

2527
supported_categories = ["biolink:Drug", "biolink:ChemicalEntity", "biolink:Disease"]
@@ -29,7 +31,8 @@
2931
for edge_file in edge_files:
3032
print(f"merging {edge_file}")
3133
with jsonlines.open(edge_file) as reader:
32-
for edge in reader:
34+
print("loaded edge file")
35+
for edge in tqdm(reader):
3336
# get subject node
3437
if type(edge["subject"]) == dict:
3538
# from ehr
@@ -133,6 +136,23 @@
133136
"log_odds_analysis_result"
134137
].get("total_sample_size", 0)
135138

139+
elif (
140+
edge.get("primary_knowledge_source")
141+
== "infores:isb-EHRMLA-data"
142+
):
143+
# from ehr may treat
144+
save_edge["supporting_data_source"] = (
145+
"infores:isb-EHRMLA-data"
146+
)
147+
save_edge["predicate"] = edge["predicate"]
148+
save_edge["log_odds_ratio"] = edge.get("log_odds_ratio", 0)
149+
save_edge["log_odds_ratio_95_ci"] = edge.get(
150+
"log_odds_ratio_95_ci", [0, 0]
151+
)
152+
save_edge["total_sample_size"] = edge.get(
153+
"total_sample_size", 0
154+
)
155+
136156
if save_edge["log_odds_ratio"] > 10:
137157
save_edge["log_odds_ratio"] = 10
138158
save_edge["log_odds_ratio_95_ci"] = [10, 10]
@@ -148,6 +168,6 @@
148168
]
149169

150170
print("Writing output edges...")
151-
with open("edges_merged.json", "w") as f:
171+
with open(f"kgx/edges_merged_{time}.json", "w") as f:
152172
json.dump(edges, f, indent=2)
153173
print("Merge Complete!")

0 commit comments

Comments
 (0)