|
|
|
|
|
import joblib |
|
import json |
|
import os |
|
import re |
|
|
|
def load_model(model_path): |
|
"""Load the trained model.""" |
|
return joblib.load(model_path) |
|
|
|
def load_label_encoders(encoder_dir): |
|
"""Load label encoders from JSON files.""" |
|
encoders = {} |
|
for filename in os.listdir(encoder_dir): |
|
if filename.endswith('_label_encoder.json'): |
|
column = filename.replace('_label_encoder.json', '') |
|
with open(os.path.join(encoder_dir, filename), 'r') as file: |
|
encoders[column] = json.load(file) |
|
return encoders |
|
|
|
def load_rules(): |
|
"""Load rule-based susceptibility rules.""" |
|
return { |
|
("ACINETOBACTER", "Aztreonam"): "Resistant", |
|
("ACINETOBACTER", "Cefazolin"): "Resistant", |
|
|
|
} |
|
|
|
def extract_genus(organism_name): |
|
"""Extract the genus from the organism name.""" |
|
return organism_name.split()[0].upper() |