else: print('Error no activity category is suitable') return None def _log_time(self, msg): if self.log_times == True: print(msg) def _log(self, msg): if self.print_log == True: print(msg) if __name__ == '__main__': from retrobiocat_web.mongo.default_connection import make_default_connection make_default_connection() t0 = time.time() scorer = SubstrateSpecificityScorer(log_times=True) t1 = time.time() print(f"Time to load = {round(t1-t0,3)}") reactionName = 'All' enzyme = 'CAR' product = 'CCc1ccc(C=O)cc1' score, info, top_hits_json = scorer.scoreReaction(reactionName, enzyme, product, None, None, sim_cutoff=0.5,
for rxn in query_result: rxns[rxn.name] = [] for rxn_string in rxn.smarts: rxns[rxn.name].append(rxn_string) return rxns def load_rules_by_type(query_result): rules_by_type = {} for rxn in query_result: rule_type = rxn.type if rule_type not in rules_by_type: rules_by_type[rule_type] = [] rules_by_type[rule_type].append(rxn.name) return rules_by_type if __name__ == '__main__': default_connection.make_default_connection() t0 = time.time() query_result = get_reactions() rxns = load_rxns(query_result) reactionEnzymeCofactorDict = load_cofactors(query_result) reactions, enzymes, reaction_enzyme_map = load_reactions_and_enzymes( query_result) t1 = time.time() print(f"Time to load rules = {round(t1-t0, 3)}") print(reactions)