Explore gapseq biochemistry
gapseq-biochem.Rmd
Before you start
This package (gapseq.biochem) is a small tool to explore the biochemistry database behind gapseq. It is not the gapseq software itself. You can find all information on gapseq here:
- Publication: Genome Biology
- Documentation: ReadTheDocs
- Source code: GitHub
Important note: The biochemistry database in gapseq is derived from ModelSEED (https://modelseed.org/). In order to give credits to the developers and curators of ModelSEED, we strongly encourage you to cite also the publication for the ModelSEED database when you are using gapseq.
Initialization
With the function initDB()
, the database can be
initialized from different sources and or different versions.
library(gapseq.biochem)
#> Loading required package: data.table
#> Loading required package: hms
#> Loading required package: CHNOSZ
#> CHNOSZ version 1.4.3 (2022-02-20)
#> reset: creating "thermo" object
#> OBIGT: loading default database with 1904 aqueous, 3445 total species
# Latest version from github
db <- initDB()
# Version at a specific commit
#db <- initDB("c1761254bf65f2789e012fd6ae2da3e45f2b6bae")
# Database from a local gapseq installation
#db <- initDB("~/Software/gapseq/")
Exploring the biochemistry database
Summary of a specific reaction
summary(db, "rxn10132")
#> rxn10132 – Cyanate transport via proton symport
#>
#> Abbreviation: CYNTt2
#> gapseq status: approved
#> EC: NA
#> Charge balance: 0
#> Mass balance: Ok
#>
#> Equation:
#> (1) H+[e] + (1) Cyanate[e] <=> (1) H+[c] + (1) Cyanate[c]
#>
#> Equation (IDs):
#> (1) cpd00067[e] + (1) cpd01015[e] <=> (1) cpd00067[c] + (1) cpd01015[c]
#>
#> LHS:
#> cpd00067 (+1 * 1 = 1) H
#> cpd01015 (-1 * 1 = -1) CNO
#>
#> RHS:
#> cpd00067 (+1 * 1 = 1) H
#> cpd01015 (-1 * 1 = -1) CNO
Summary of a specific compound
Example: Summary for Lactose
summary(db, "cpd00208")
#> cpd00208 – Lactose
#>
#> Mol. formula: C12H22O11
#> Charge: 0
#> Abbreviation: lcts
#>
#> Reactions consuming cpd00208:
#> rxn00816: (1) H2O[c] + (1) Lactose[c] ––> (1) D-Glucose[c] + (1) Galactose[c]
#> rxn06677: (1) Lactose[c] + (1) Protein N-pros-phosphohistidine[c] ––> (1) Lactose-6-phosphate[c] + (1) Protein histidine[c]
#> rxn10865: (1) Phosphoenolpyruvate[c] + (1) Lactose[e] ––> (1) Pyruvate[c] + (1) Lactose-6-phosphate[c]
#> rxn11244: (1) Lactose[c] ––> (1) D-Glucose[c] + (1) Galactose[c]
#> rxn15230: (1) H2O[c] + (1) Lactose[c] ––> (1) Galactose[c] + (1) alpha-D-Glucose[c]
#> rxn15582: (1) H2O[c] + (1) Lactose[c] ––> (1) beta D-Galactose[c] + (1) alpha-D-Glucose[c]
#> rxn15588: (1) H2O[c] + (1) Lactose[c] ––> (1) beta-D-Glucose[c] + (1) beta D-Galactose[c]
#> rxn20022: (1) Lactose[c] + (1) Protein-3-phospho-L-histidines[c] ––> (1) Lactose-6-phosphate[c] + (1) Protein-Histidines[c]
#> rxn29965: (1) H2O[c] + (1) Lactose[c] ––> (1) D-Glucose[c] + (1) Galactose[c]
#> rxn30623: (1) Lactose[c] ––> (1) beta-D-Glucose[c] + (1) Galactose[c]
#> rxn31422: (1) H2O[c] + (1) Lactose[c] ––> (1) Galactose[c] + (1) alpha-D-Glucose[c]
#> rxn32517: (1) H2O[c] + (1) Lactose[c] ––> (1) beta D-Galactose[c] + (1) alpha-D-Glucose[c]
#> rxn38052: (1) H2O[c] + (1) Lactose[c] ––> (1) beta-D-Glucose[c] + (1) beta D-Galactose[c]
#>
#> Reactions producing cpd00208:
#> rxn01228: (1) H2O[c] + (1) Lactose-6-phosphate[c] ––> (1) Phosphate[c] + (1) Lactose[c]
#> rxn90002: (1) 2-fucosyllactose[c] + (1) H2O[c] ––> (1) Lactose[c] + (1) L-Fucose[c]
#>
#> Reactions consuming+producing cpd00208:
#> rxn00356: (1) D-Glucose[c] + (1) UDP-galactose[c] <=> (1) UDP[c] + (1) Lactose[c]
#> rxn01229: (1) FAD[c] + (1) H+[c] + (1) Lactose[c] <=> (1) FADH2[c] + (1) 3-Ketolactose[c]
#> rxn11290: (1) Lactose[c] <=> (1) beta-Lactose[c]
#> rxn14171: (1) Lactose[c] + (1) A[c] <=> (1) 3-Ketolactose[c] + (1) AH2[c]
#> rxn15570: (1) UDP-galactose[c] + (1) beta-D-Glucose[c] <=> (1) UDP[c] + (1) Lactose[c]
#> rxn15571: (1) UDP-galactose[c] + (1) alpha-D-Glucose[c] <=> (1) UDP[c] + (1) Lactose[c]
#> rxn20021: (1) Lactose[c] + (1) Acceptor[c] <=> (1) 3-Ketolactose[c] + (1) Donor-H2[c]
#> rxn26312: (1) Lactose[c] <=> (1) allolactose[c]
#>
#> Transporters of cpd00208:
#> rxn05598: (1) H2O[c] + (1) ATP[c] + (1) Lactose[e] ––> (1) ADP[c] + (1) Phosphate[c] + (1) H+[c] + (1) Lactose[c]
#> rxn08779: (1) H+[e] + (1) Lactose[c] ––> (1) H+[c] + (1) Lactose[e]
#> rxn08780: (1) Lactose[c] <=> (1) Lactose[e]
#> rxn08781: (1) H+[e] + (1) Lactose[e] <=> (1) H+[c] + (1) Lactose[c]
#> rxn10169: (1) H+[e] + (1) Lactose[e] <=> (1) H+[c] + (1) Lactose[c]
#> rxn28585: (1) Lactose[e] <=> (1) Lactose[c]
#> rxn32685: (1) Lactose[c] <=> (1) Lactose[e]
Find reactions
There are different ways to search for specific reactions, e.g. via
specific compound IDs (if they are known), via regular
expressions/search terms for compound names and/or by EC-numbers.
Everything can be done with a single function: findRxns()
.
Here are a few example cases:
Example: Find reactions with the compound cpd00211 (Butyrate)
findRxns(db, cpd = "cpd00211")
#> rxn00873: (1) ATP[c] + (1) CoA[c] + (1) Butyrate[c] ––> (1) Pyrophosphate[c] + (1) AMP[c] + (1) H+[c] + (1) Butyryl-CoA[c]
#> rxn00875: (1) Acetate[c] + (1) Butyryl-CoA[c] <=> (1) Acetyl-CoA[c] + (1) Butyrate[c]
#> rxn00994: (1) Butyryl-CoA[c] + (1) Acetoacetate[c] <=> (1) Butyrate[c] + (1) Acetoacetyl-CoA[c]
#> rxn01236: (1) ATP[c] + (1) Butyrate[c] <=> (1) ADP[c] + (1) Butanoylphosphate[c]
#> rxn01237: (1) NAD[c] + (1) Butyrate[c] <–– (1) NADH[c] + (1) H+[c] + (1) 2-Butenoate[c]
#> rxn01238: (1) H2O[c] + (1) 5'-Butyrylphosphoinosine[c] ––> (1) IMP[c] + (1) Butyrate[c] + (2) H+[c]
#> rxn02683: (1) H2O[c] + (1) Nonane-4,6-dione[c] ––> (1) H+[c] + (1) Butyrate[c] + (1) 2-Pentanone[c]
#> rxn02879: (1) H2O[c] + (1) Phorbol-12,13-dibutyrate[c] <=> (1) H+[c] + (1) Butyrate[c] + (1) Phorbol 13-butanoate[c]
#> rxn05683: (1) H+[e] + (1) Butyrate[e] <=> (1) H+[c] + (1) Butyrate[c]
#> rxn08111: (1) H2O[c] + (1) NAD[c] + (1) Butanal[c] ––> (1) NADH[c] + (1) Butyrate[c] + (2) H+[c]
#> rxn08183: (1) H+[e] + (1) Butyrate[e] <=> (1) H+[c] + (1) Butyrate[c]
#> rxn08184: (1) Butyrate[c] <=> (1) Butyrate[e]
#> rxn11378: (1) Acetyl-CoA[c] + (1) H+[c] + (1) Butyrate[c] <–– (1) Acetate[c] + (1) M_Butyrate_Coa[c]
#> rxn11382: (1) Butyrate[e] <=> (1) Butyrate[c]
#> rxn13427: (1) Acetyl-CoA[c] + (1) H+[c] + (1) Butyrate[c] <=> (1) Acetate[c] + (1) Butyrate-Coa[c]
#> rxn13713: (1) Butyryl-CoA[c] + (1) 4-Hydroxybutanoate[c] <=> (1) Butyrate[c] + (1) 4-Hydroxybutyryl-CoA[c]
#> rxn13813: (1) H2O[c] + (1) N-Butyryl-L-homoserine lactone[c] <=> (1) H+[c] + (1) Butyrate[c] + (1) homoserine lactone[c]
#> rxn20048: (1) H2O[c] + (1) Tributyrin[c] <=> (1) H+[c] + (1) Butyrate[c] + (1) 1,2-dibutyrin[c]
#> rxn23428: (1) H2O[c] + (1) (2Z,4Z)-2-hydroxy-6-oxonona-2,4-dienoic acid[c] ––> (1) H+[c] + (1) Butyrate[c] + (1) 2-keto-4-pentenoate[c]
#> rxn36389: (1) H2O[c] + (1) NADP[c] + (1) Butanal[c] <=> (1) NADPH[c] + (1) Butyrate[c] + (2) H+[c]
#> rxn36390: (1) H2O[c] + (1) NADP[c] + (1) (Z)-2-buten-1-ol[c] ––> (1) NADPH[c] + (1) Butyrate[c] + (2) H+[c]
#> rxn36391: (1) H2O[c] + (1) NAD[c] + (1) (Z)-2-buten-1-ol[c] ––> (1) NADH[c] + (1) Butyrate[c] + (2) H+[c]
#> rxn36392: (1) H2O[c] + (1) NADP[c] + (1) isobutanal[c] <=> (1) NADPH[c] + (1) Butyrate[c] + (2) H+[c]
#> rxn36393: (1) H2O[c] + (1) NAD[c] + (1) isobutanal[c] <=> (1) NADH[c] + (1) Butyrate[c] + (2) H+[c]
#> rxn36394: (1) H2O[c] + (1) NADP[c] + (1) (Z)-but-2-enal[c] ––> (1) NADPH[c] + (1) Butyrate[c]
#> rxn36395: (1) H2O[c] + (1) NAD[c] + (1) (Z)-but-2-enal[c] ––> (1) NADH[c] + (1) Butyrate[c]
#> rxn37573: (1) H2O[c] + (1) Tributyrin[c] <=> (1) H+[c] + (1) Butyrate[c] + (1) 1,2-dibutyrin[c]
#> rxn37646: (1) H2O[c] + (1) Tributyrin[c] <=> (1) H+[c] + (1) Butyrate[c] + (1) 1,2-dibutyrin[c]
#> rxn38354: (1) H2O[c] + (1) Tributyrin[c] <=> (1) H+[c] + (1) Butyrate[c] + (1) 1,2-dibutyrin[c]
Example: Find reactions with the both compound ids: cpd00100 (Glycerol) and cpd22614 (sulfoquinovose)
findRxns(db, cpd = c("cpd00100","cpd22614"))
#> rxn47991: (1) H2O[c] + (1) 1-(6-sulfo-alpha-D-quinovosyl)glycerol[c] ––> (1) Glycerol[c] + (1) sulfoquinovose[c]
Example: Find reactions with at least one of the compound ids: cpd22614 (sulfoquinovose) or cpd01337 (Romicil).
findRxns(db, cpd = c("cpd22614","cpd01337"), cpd.link = "OR")
#> rxn02682: (1) ATP[c] + (1) Romicil[c] ––> (1) ADP[c] + (1) H+[c] + (1) Oleandomycin 2'-O-phosphate[c]
#> rxn04318: (1) dTDP-D-desosamine[c] + (1) L-Oleandrosyl-oleandolide[c] <=> (1) dTDP[c] + (1) Romicil[c]
#> rxn18889: (1) H2O[c] + (1) ATP[c] + (1) Romicil[c] ––> (1) ADP[c] + (1) Phosphate[c] + (1) H+[c] + (1) Romicil[e]
#> rxn23249: (1) UDP-glucose[c] + (1) Romicil[c] <=> (1) UDP[c] + (1) glucosyl-oleandomycin[c]
#> rxn23250: (1) H2O[c] + (1) glucosyl-oleandomycin[c] ––> (1) beta-D-Glucose[c] + (1) Romicil[c]
#> rxn23251: (1) H2O[c] + (1) glucosyl-oleandomycin[c] ––> (1) beta-D-Glucose[c] + (1) Romicil[c]
#> rxn47991: (1) H2O[c] + (1) 1-(6-sulfo-alpha-D-quinovosyl)glycerol[c] ––> (1) Glycerol[c] + (1) sulfoquinovose[c]
#> rxn48462: (1) sulfoquinovose[c] <=> (1) 6-deoxy-6-sulfo-D-fructose[c]
#> rxn90101: (1) sulfoquinovose[e] + (1) H+[e] <=> (1) sulfoquinovose[c] + (1) H+[c]
Example: Find reactions for EC 4.2.1.22.
findRxns(db, ec = "4.2.1.22")
#> rxn00953: (1) L-Serine[c] + (1) Homocysteine[c] <=> (1) H2O[c] + (1) Cystathionine[c]
#> rxn03380: (1) L-Serine[c] + (1) Selenohomocysteine[c] <=> (1) H2O[c] + (1) Selenocystathionine[c]
#> rxn05909: (1) L-Serine[c] + (1) H+[c] + (1) H2S[c] <=> (1) H2O[c] + (1) L-Cysteine[c]
#> rxn15167: (1) L-Serine[c] + (1) Homocysteine[c] <=> (1) H2O[c] + (1) L-Cystathionine[c]
#> rxn32860: (1) L-Serine[c] + (1) Selenohomocysteine[c] <=> (1) H2O[c] + (1) Selenocystathionine[c]
Example: Find reactions, where the on participating metabolite contains the term “sulfoquinovose”
findRxns(db, grep.str = "sulfoquinovose")
#> rxn04027: (1) UDP-glucose[c] + (1) Sulfite[c] ––> (1) H2O[c] + (1) UDP-6-sulfoquinovose[c]
#> rxn07172: (1) UDP-6-sulfoquinovose[c] + (1) 1,2-Diacyl-sn-glycerol[c] <=> (1) UDP[c] + (1) SQDG[c]
#> rxn22637: (1) UDP-glucose[c] + (1) Sulfite[c] ––> (1) H2O[c] + (1) UDP-6-sulfoquinovose[c]
#> rxn22649: (1) UDP-6-sulfoquinovose[c] + (1) DIACYLGLYCEROL[c] <=> (1) UDP[c] + (1) SULFOQUINOVOSYLDIACYLGLYCEROL[c]
#> rxn22650: (1) UDP-6-sulfoquinovose[c] + (1) DIACYLGLYCEROL[c] <=> (1) UDP[c] + (1) SULFOQUINOVOSYLDIACYLGLYCEROL[c]
#> rxn29915: (1) UDP-6-sulfoquinovose[e] <=> (1) UDP-6-sulfoquinovose[c]
#> rxn30780: (1) UDP-glucose[c] + (1) Sulfite[c] <–– (1) UDP-6-sulfoquinovose[c]
#> rxn31311: (1) UDP-6-sulfoquinovose[c] + (1) 1,2-Diacyl-sn-glycerol[c] <=> (1) UDP[c] + (1) SQDG[c]
#> rxn33924: (2) d[c] + (1) H2O[c] + (1) Glycerol-3-phosphate[c] + (1) UDP-6-sulfoquinovose[c] ––> (1) Phosphate[c] + (1) Sulfoquinovosyldiacyglycerol[c] + (1) Uracil Diphosphate[c] + (2) CoA[c]
#> rxn35088: (1) UDP-6-sulfoquinovose[c] + (1) 1,2-Diacyl-sn-glycerol dihexadecanoyl[c] <–– (1) UDP[c] + (1) H+[c] + (1) Sulfoquinovosyldiacylglycerol (dihexadecanoyl, n-C16:0)[c]
#> rxn35089: (1) UDP-6-sulfoquinovose[c] + (1) 1,2-Diacyl-sn-glycerol (1-(11Z)-octadecenoyl,2-hexadecanoyl, 18:1(11Z)/16:0)[c] <–– (1) UDP[c] + (1) H+[c] + (1) Sulfoquinovosyldiacylglycerol (1-(11Z)-octadecenoyl,2-hexadecanoyl, 18:1(11Z)/16:0)[c]
#> rxn35090: (1) UDP-6-sulfoquinovose[c] + (1) 1,2-Diacyl-sn-glycerol (1-(9Z)-octadecenoyl,2-hexadecanoyl, 18:1(9Z)/16:0)[c] <–– (1) UDP[c] + (1) H+[c] + (1) Sulfoquinovosyldiacylglycerol (1-(9Z)-octadecenoyl,2-hexadecanoyl, 18:1(9Z)/16:0)[c]
#> rxn38784: (1) UDP-6-sulfoquinovose[c] <=> (1) UDP-6-sulfoquinovose[e]
#> rxn47991: (1) H2O[c] + (1) 1-(6-sulfo-alpha-D-quinovosyl)glycerol[c] ––> (1) Glycerol[c] + (1) sulfoquinovose[c]
#> rxn48462: (1) sulfoquinovose[c] <=> (1) 6-deoxy-6-sulfo-D-fructose[c]
#> rxn90101: (1) sulfoquinovose[e] + (1) H+[e] <=> (1) sulfoquinovose[c] + (1) H+[c]
Example: Find all reactions that include NADH (cpd00008) as co-factor and where at least one compound matches the term “L-Lactate” or “D-Lactate”:
findRxns(db, cpd = "cpd00004", grep.str = "(D|L)-Lactate")
#> rxn00499: (1) NAD[c] + (1) L-Lactate[c] <=> (1) NADH[c] + (1) Pyruvate[c] + (1) H+[c]
#> rxn00500: (1) NAD[c] + (1) D-Lactate[c] <=> (1) NADH[c] + (1) Pyruvate[c] + (1) H+[c]
#> rxn01053: (1) H2O[c] + (1) NAD[c] + (1) L-Lactaldehyde[c] ––> (1) NADH[c] + (1) L-Lactate[c] + (2) H+[c]
#> rxn01273: (1) H2O[c] + (1) NAD[c] + (1) D-Lactaldehyde[c] ––> (1) NADH[c] + (1) D-Lactate[c] + (2) H+[c]
#> rxn30087: (1) H2O[c] + (1) NAD[c] + (1) L-Lactaldehyde[c] ––> (1) NADH[c] + (1) L-Lactate[c] + (2) H+[c]
#> rxn30724: (1) NAD[c] + (1) L-Lactaldehyde[c] ––> (1) NADH[c] + (1) L-Lactate[c]
#> rxn33559: (1) H2O[c] + (1) NAD[c] + (1) D-Lactaldehyde[c] ––> (1) NADH[c] + (1) D-Lactate[c] + (2) H+[c]
#> rxn34235: (1) NAD[c] + (1) D-Lactate[c] <=> (1) NADH[c] + (1) Pyruvate[c] + (1) H+[c]
#> rxn34239: (1) NAD[c] + (1) L-Lactate[c] <=> (1) NADH[c] + (1) Pyruvate[c] + (1) H+[c]
#> rxn34240: (1) NAD[c] + (1) L-Lactate[c] <=> (1) NADH[c] + (1) Pyruvate[c] + (1) H+[c]
#> rxn36500: (1) H2O[c] + (1) NAD[c] + (1) D-Lactaldehyde[c] <=> (1) NADH[c] + (1) L-Lactate[c] + (2) H+[c]
#> rxn36645: (1) H2O[c] + (1) NAD[c] + (1) L-Lactaldehyde[c] <=> (1) NADH[c] + (1) D-Lactate[c] + (2) H+[c]
#> rxn36647: (1) H2O[c] + (1) NAD[c] + (1) 2-Oxopropanal[c] <=> (1) NADH[c] + (1) D-Lactate[c]
#> rxn36652: (1) H2O[c] + (1) NAD[c] + (1) 2-Oxopropanal[c] <=> (1) NADH[c] + (1) L-Lactate[c]
#> rxn38860: (1) H2O[c] + (1) NAD[c] + (1) 2-Oxopropanal[c] <=> (1) NADH[c] + (1) D-Lactate[c]
#> rxn38861: (1) H2O[c] + (1) NAD[c] + (1) 2-Oxopropanal[c] <=> (1) NADH[c] + (1) L-Lactate[c]
#> rxn90054: (2) Reducedferredoxin[c] + (2) NAD[c] + (1) L-Lactate[c] ––> (1) Pyruvate[c] + (2) Oxidizedferredoxin[c] + (2) NADH[c]
#> rxn90056: (2) Reducedferredoxin[c] + (2) NAD[c] + (1) D-Lactate[c] ––> (1) Pyruvate[c] + (2) Oxidizedferredoxin[c] + (2) NADH[c]