Closed choon-sim closed 2 years ago
Hi @choon-sim ,
Our explanation is mostly a warning so that users do not end up with seeds identifiers that do not match metabolite identifiers in their metabolic networks.
Let's assume the metabolites in your metabolic networks have identifiers such as "cpd00029", you can create the seed file with the command:
m2m seeds -o output --metabolites metabolites.txt
with the content of metabolites.txt
looking like this:
cpd00048
cpd00029
cpd00141
cpd00256
cpd01663
cpd02733
cpd02475
cpd03246
cpd03247
cpd03047
cpd01318
...
However, standard SBML files of metabolic networks usually add a prefix ("M_") and a suffix (the compartment) to identifiers of metabolites. You can easily check that by looking at the contents of the SBML files. You might see <species id="M_cpd00256_c" name="cpd00256" compartment="c"/>
for instance. In that case, it is important that your seed identifiers follow the same patterns, and metabolites.txt
would look like this:
M_cpd02475_c
M_cpd03246_c
M_cpd03247_c
M_cpd03047_c
M_cpd01318_c
...
We advise using the cytosolic compartment if transport reactions for seeds from the extracellular space are missing. Let me know if something remains unclear.
Hi @cfrioux,
Thanks for the explanation. I opened the sbml file of the metabolic network. Water for example is cpd00001
and I saw 3 different IDs.
<species metaid="M_cpd00001_c0" id="M_cpd00001_c0" name="H2O-c0" compartment="c0" hasOnlySubstanceUnits="false" boundaryCondition="false" constant="false" fbc:charge="0" fbc:chemicalFormula="H2O">
<species metaid="M_cpd00001_e0" id="M_cpd00001_e0" name="H2O-e0" compartment="e0" hasOnlySubstanceUnits="false" boundaryCondition="false" constant="false" fbc:charge="0" fbc:chemicalFormula="H2O">
<reaction metaid="R_EX_cpd00001_e0" id="R_EX_cpd00001_e0" name="H2O-e0 Exchange" reversible="true" fast="false" fbc:lowerFluxBound="R_EX_cpd00001_e0_lower_bound" fbc:upperFluxBound="default_ub">
Do I add these to metabolites.txt
?
M_cpd00001_c0
M_cpd00001_e0
R_EX_cpd00001_e0
Hi @choon-sim,
For the metabolites.txt
file, in this example you only have to add:
M_cpd00001_c0
M_cpd00001_e0
Because they are metabolites (marked by the species
tag in your SBML file and also by the prefix M_
in the M_cpd00001_c0
ID) whereas R_EX_cpd00001_e0
is a biochemical reaction (marked by the tag reaction
and also by the prefix R_
in the R_EX_cpd00001_e0
ID).
Note that it is very likely that identifiers with c0
as a suffix (such as M_cpd00001_c0
) relate to metabolites located in the cytosol and the ones with e0
(such as M_cpd00001_e0
) in the extracellular space. Therefore you can add only the e0 compounds if you are confident with the presence of adequate transport reactions (because in this way the extracellular metabolites will be transported to the cytosol compartment by these transport reactions), or only the c0 compounds otherwise.
Hi @cfrioux,
It makes sense. I would add just the c0 compounds then. Thanks!
Hi, I am importing my GSM models that were made using gapseq into m2m. I am confused by how to create the seed file. In your tutorial, it is said:
Once a list of metabolites has been designed, these metabolites must be converted to a list of IDs of the metabolic database corresponding to your metabolic networks. For example, in the VMH seeds ethanol is etoh. In the MetaCyc database, the ID of ethanol is ETOH. Then the ID must be checked with the ID in the SBML files of the metabolic networks. In this example ETOH is associated to M_ETOH_c in the SBML file in the species field (<species id="M_ETOH_c" name="ETOH" compartment="c"/>). The M_ corresponds to metabolite (another possibility for this prefix is the R_ for reaction). And _c corresponds to the cytosol compartment.
I basically want the following metabolites in the seed file. These metabolites were used to fill gaps in the models in gapseq, so it's good to keep things consistent.
The gapseq website (https://gapseq.readthedocs.io/en/latest/database/biochemistry.html#) says:
The gapseq database for chemical compounds and reactions originated from the SEED database.
Any advice will be greatly appreciated.