-
Notifications
You must be signed in to change notification settings - Fork 47
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
Gapfilling #185
Gapfilling #185
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here, the gap filling mainly find transport reactions connect the dead metabolites which existed in two different compartments. It will be a little dangerous that if no evidences support the related transport reactions. Can we find the related evidences?
I agree with Hongzhong on this. Taking the list of suggested new transport reactions, can we evaluate what type of transport they are? It seems some of them are probably simple diffusion (cytoplasm <-> nucleus), while others would be facilitated by some protein. Is there evidence for these reactions in yeast or other organisms? There probably is as they are all MetaNetX reactions? |
First, we got the list of deadend metabolites due to transport rxns missing. Next step, we go to MetaNetx to search for all transport rxns related to that met, then we find whether our model has the same transport rxn for this met for another compartment or same transport mechanism for similar met to decide which kind of transport rxns that we should add. Example:
we added the simple rxn for glutathione[er]: |
+ other styling preferences
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@feiranl The PR looks good regarding compatibility & reproducibility. A couple of things that I think you should address though:
- As in previous PRs, the new rxns should contain in the
rxnNotes
a reference to this PR number. E.g.: "Gap-filling (PR Gapfilling #185); MNXR95431" - Also in the
rxnNotes
field, "unknown transporter" should be stated for any reaction that does not occur by difusion. -
MissingTransDeadEnd
is lacking documentation: you should specify what is each column in the output table, otherwise it's hard to understand. -
metsinComps
could be simplified to a large extent to not require both the COBRA and RAVEN models, you could just provide the metabolite index instead of the name, and return the indexes in the RAVEN model that match that name, as indexes of RAVENized models are the same as the COBRA counterpart. In fact you could avoidmetsinComps
entirely and simplify a lot the code by just using the indexes of the RAVEN model in your script.
Note that I added a couple commits fixing some conflicts and styling preferences. Make sure to pull those changes ;)
@edkerk @hongzhonglu I don't see the problem of adding these rxns as they all have corresponding MetaNetX ids, or perhaps I'm missing something? @feiranl are the predictions when simulating the model before and after these additions changing any fluxes significantly? Could you display those results here somehow? |
@BenjaSanchez I think Feiran has already give the explanation. what I mean is that though the metnetx ids exist, the detailed reaction can be different in the compartment. It is nice to give evidence to show why we can give the related transport reactions. |
@hongzhonglu what is most likely in all these cases is that transport does occur, but there is missing annotation for the specific compartment. So as long as we indicate "unknown transporter" and that the reactions were added due to gap-filling, I think it would be ok. Adding a transport reaction for which there is only evidence in another compartment is common practice in other models such as |
@BenjaSanchez. This is what I was missing, either proof or at least clarification why transport reactions were added:
This is done in 789533d, so it looks good to me! |
Main improvements in this PR:
MissingTransDeadEnd.m
is a function that detect this kind of dead end metabolitesaddGapfillingRxnToGEM.m
is to update the model with chosen reactionsI hereby confirm that I have:
devel
as a target branch (top left drop-down menu)