-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
multiple biomass reactions identified in model with single biomass reaction #689
Comments
This is partly due to the model definition and partly due to how memote tries to be very eager to find the biomass reaction. I have recorded how these components are matched:
As you can see, most of the matches are by SBO term and only few by 'buzzword'. The main problem is that in addition to the reactions, we also search through the metabolites (as some models only have a biomass compound within an unspecified reaction). For metabolites we use https://www.ebi.ac.uk/sbo/main/SBO:0000649 which is not very specific and many metabolites match in the yeast model (this is correctly done in the model). Then, for each matching metabolite, we add all reactions to the list of candidates. That is why so many reactions are found.
If you agree that those are solutions, I can implement 1. and 2. rather quickly. |
@Midnighter thanks for getting back to me. I think solution 1 would be indeed the simplest one, and it will for sure solve our issue (we just have one reaction with SBO:0000629). Additionally, it would make the test more consistent with its documentation :) |
Problem description
From the definition of
test_biomass_presence
:"Implementation: Identifies possible biomass reactions using two principal steps: 1. Return reactions that include the SBO annotation "SBO:0000629" for biomass. If no reactions can be identifies this way: 1. Look for the
buzzwords
"biomass", "growth" and "bof" in reaction IDs. 2. Look for metabolite IDs or names that contain thebuzzword
"biomass" and obtain the set of reactions they are involved in. 3. Remove boundary reactions from this set. 4. Return the union of reactions that match the buzzwords and of the reactions that metabolites are involved in that match the buzzword."However, when the report is ran on this model, which has a single reaction
BIOMASS_yeastGEM
with the SBO termSBO:0000629
, it returns 214 reactions (also matches to component pseudoreactions e.g.protein pseudoreaction
+ other reactions where the biomass components are involved). This does not sound like intended behavior to me.Code Sample
Context
System Information
OS Windows
OS-release 10
Python 3.7.7
Package Versions
Jinja2 2.11.2
click 7.1.2
click-configfile 0.2.3
click-log 0.3.2
cobra 0.18.1
cookiecutter 1.7.2
depinfo 1.5.3
equilibrator-api 0.1.26
future 0.18.2
gitpython 3.1.3
goodtables 2.5.0
importlib-resources 3.0.0
lxml 4.5.1
memote 0.11.0
numpydoc 1.1.0
pandas 1.0.5
pip 20.1.1
pylru 1.2.0
pytest 5.4.3
requests 2.24.0
ruamel.yaml 0.16.10
setuptools 47.3.1.post20200622
six 1.15.0
sqlalchemy 1.3.18
sympy 1.6
travis-encrypt 1.1.2
wheel 0.34.2
The text was updated successfully, but these errors were encountered: