sorgerlab / indra

INDRA (Integrated Network and Dynamical Reasoning Assembler) is an automated model assembly system interfacing with NLP systems and databases to collect knowledge, and through a process of assembly, produce causal graphs and dynamical models.
http://indra.bio
BSD 2-Clause "Simplified" License
173 stars 65 forks source link

Add enzyme code queries to HGNC client #1367

Closed cthoyt closed 2 years ago

cthoyt commented 2 years ago

This PR adds two functions to the HGNC client:

  1. hgnc_client.get_enzymes(hgnc_id: str) -> set[str]
  2. hgnc_client.get_hgncs_from_enzyme(ec_code: str) -> set[str]

These functions allow for quick lookup of enzyme information about a given gene. There may be potentially many enzyme codes associated with a gene corresponding to several functions of its protein product.

This PR also updates the hgnc_entries.tsv resource file to get this information in it.

cthoyt commented 2 years ago

@bgyori besides an unrelated test for the database Rest API (indra.tests.test_db_rest.test_filter_ev), it looks like the issue of dependency resolution brought up in #1369 seems to be gone. I can't know for sure if it was a single hiccup or if the updated PyBEL 0.15.5 fixed it, though