{ "cells": [ { "cell_type": "markdown", "id": "3f4aa8cb-ae93-4ecb-8a7c-8a1d6ce7ce17", "metadata": {}, "source": [ "# KBase COBRA Model " ] }, { "cell_type": "code", "execution_count": 2, "id": "02526cac-f111-4a81-bf5f-2aed7c9f9141", "metadata": {}, "outputs": [], "source": [ "import cobra\n", "import logging\n", "import cobrakbase\n", "logger = logging.getLogger(__name__)" ] }, { "cell_type": "code", "execution_count": 3, "id": "ef0f9fa8-e95d-45ea-b761-9d17b0f2fdfc", "metadata": {}, "outputs": [], "source": [ "kbase = cobrakbase.KBaseAPI()" ] }, { "cell_type": "code", "execution_count": 4, "id": "66577827-8002-4f6b-a87d-fe20098671d1", "metadata": {}, "outputs": [], "source": [ "ws = \"filipeliu:narrative_1561151919387\"\n", "cobra_model = kbase.get_from_ws('GCF_000005845.2.gf.mdl', ws)" ] }, { "cell_type": "code", "execution_count": 5, "id": "856ca0c3-6a83-4f12-9913-98e5204dae66", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
NameGCF_000005845.2.mdl
Memory address0x07f5c1b91be20
Number of metabolites1287
Number of reactions1566
Number of groups0
Objective expression1.0*bio1 - 1.0*bio1_reverse_b18f7
Compartmentsc0, e0
" ], "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cobra_model" ] }, { "cell_type": "markdown", "id": "aff4c729-977f-4f76-beb7-7b5079526bbe", "metadata": {}, "source": [ "### Run default FBA with solution of 298.498 (complete media)" ] }, { "cell_type": "code", "execution_count": 7, "id": "910c5087-5cda-4fe8-b697-5349dfcb128d", "metadata": { "collapsed": true, "jupyter": { "outputs_hidden": true }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "

Objective

1.0 bio1 = 298.49841109986005

Uptake

\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
MetaboliteReactionFluxC-NumberC-Flux
cpd00007_e0EX_cpd00007_e0973.900.00%
cpd00023_e0EX_cpd00023_e0716.457.07%
cpd00024_e0EX_cpd00024_e0100059.87%
cpd00030_e0EX_cpd00030_e00.924300.00%
cpd00034_e0EX_cpd00034_e00.924300.00%
cpd00039_e0EX_cpd00039_e085.261.01%
cpd00041_e0EX_cpd00041_e047.1440.37%
cpd00048_e0EX_cpd00048_e00.924300.00%
cpd00051_e0EX_cpd00051_e073.6460.87%
cpd00054_e0EX_cpd00054_e09630.57%
cpd00058_e0EX_cpd00058_e00.924300.00%
cpd00063_e0EX_cpd00063_e00.924300.00%
cpd00065_e0EX_cpd00065_e014.09110.31%
cpd00066_e0EX_cpd00066_e046.1290.82%
cpd00069_e0EX_cpd00069_e036.0290.64%
cpd00079_e0EX_cpd00079_e050065.92%
cpd00080_e0EX_cpd00080_e0100035.92%
cpd00099_e0EX_cpd00099_e00.924300.00%
cpd00106_e0EX_cpd00106_e0992.547.84%
cpd00107_e0EX_cpd00107_e0137.561.63%
cpd00118_e0EX_cpd00118_e00.924340.01%
cpd00119_e0EX_cpd00119_e023.6660.28%
cpd00130_e0EX_cpd00130_e080.2240.63%
cpd00149_e0EX_cpd00149_e00.924300.00%
cpd00156_e0EX_cpd00156_e0105.151.04%
cpd00161_e0EX_cpd00161_e0402.243.17%
cpd00182_e0EX_cpd00182_e043.14100.85%
cpd00184_e0EX_cpd00184_e04.706100.09%
cpd00205_e0EX_cpd00205_e00.924300.00%
cpd00254_e0EX_cpd00254_e00.924300.00%
cpd00264_e0EX_cpd00264_e00.924370.01%
cpd00268_e0EX_cpd00268_e012.7500.00%
cpd00276_e0EX_cpd00276_e01000611.84%
cpd00277_e0EX_cpd00277_e010001019.74%
cpd00305_e0EX_cpd00305_e00.9243120.02%
cpd00311_e0EX_cpd00311_e049.9100.98%
cpd00322_e0EX_cpd00322_e072.1860.85%
cpd00355_e0EX_cpd00355_e01.849110.04%
cpd00367_e0EX_cpd00367_e0178.493.17%
cpd00644_e0EX_cpd00644_e01.84990.03%
cpd00794_e0EX_cpd00794_e0483.81211.46%
cpd01080_e0EX_cpd01080_e025.43180.90%
cpd03847_e0EX_cpd03847_e044.79141.24%
cpd10516_e0EX_cpd10516_e03.69700.00%
cpd11590_e0EX_cpd11590_e039.0780.62%
cpd15500_e0EX_cpd15500_e01.849510.19%
cpd17041_c0rxn13782_c0298.500.00%
cpd17042_c0rxn13783_c0298.500.00%
cpd17043_c0rxn13784_c0298.500.00%

Secretion

\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
MetaboliteReactionFluxC-NumberC-Flux
cpd00009_e0EX_cpd00009_e0-100000.00%
cpd00011_e0EX_cpd00011_e0-100012.57%
cpd00012_e0EX_cpd00012_e0-129.700.00%
cpd00033_e0EX_cpd00033_e0-16820.86%
cpd00047_e0EX_cpd00047_e0-100012.57%
cpd00067_e0EX_cpd00067_e0-100000.00%
cpd00092_e0EX_cpd00092_e0-121.341.25%
cpd00100_e0EX_cpd00100_e0-467.533.60%
cpd00108_e0EX_cpd00108_e0-754.3611.63%
cpd00117_e0EX_cpd00117_e0-562.534.34%
cpd00122_e0EX_cpd00122_e0-1000820.56%
cpd00129_e0EX_cpd00129_e0-495.456.36%
cpd00137_e0EX_cpd00137_e0-1000615.42%
cpd00139_e0EX_cpd00139_e0-2.77320.01%
cpd00211_e0EX_cpd00211_e0-40.4340.42%
cpd00222_e0EX_cpd00222_e0-1000615.42%
cpd00226_e0EX_cpd00226_e0-1000512.85%
cpd00396_e0EX_cpd00396_e0-74.0961.14%
cpd01015_e0EX_cpd01015_e0-297.710.76%
cpd15499_e0EX_cpd15499_e0-1.849510.24%
cpd11416_c0SK_cpd11416_c0-298.500.00%
" ], "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cobra_model.summary()" ] }, { "cell_type": "markdown", "id": "48fc318f-9b59-489c-ba0d-a36351b47f93", "metadata": {}, "source": [ "### Get media object from KBase \n", "cobrakbase.core.kbasebiochem.media.Media" ] }, { "cell_type": "code", "execution_count": 8, "id": "9682f2b4-9a5d-4c5d-9d2f-9d12420da0dd", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "media = kbase.get_from_ws('Carbon-D-Glucose', ws)\n", "print(type(media))" ] }, { "cell_type": "markdown", "id": "01dc27a9-b76e-4564-9806-bf74aa8472f4", "metadata": {}, "source": [ "### Run FBA with Carbon-D-Glucose media\n", "`FBAModel.medium` = **dict or Media**\n", "\n", "- `FBAModel.medium` inherits default cobra medium setter but also accepts `cobrakbase.core.kbasebiochem.media.Media`" ] }, { "cell_type": "code", "execution_count": 12, "id": "f6c0084a-4fda-4f36-ae48-313899042a15", "metadata": {}, "outputs": [ { "data": { "text/html": [ "

Objective

1.0 bio1 = 0.6971420881250999

Uptake

\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
MetaboliteReactionFluxC-NumberC-Flux
cpd00009_e0EX_cpd00009_e00.566100.00%
cpd00013_e0EX_cpd00013_e05.97500.00%
cpd00027_e0EX_cpd00027_e056100.00%
cpd00030_e0EX_cpd00030_e00.00215900.00%
cpd00034_e0EX_cpd00034_e00.00215900.00%
cpd00048_e0EX_cpd00048_e00.155100.00%
cpd00058_e0EX_cpd00058_e00.00215900.00%
cpd00063_e0EX_cpd00063_e00.00215900.00%
cpd00099_e0EX_cpd00099_e00.00215900.00%
cpd00149_e0EX_cpd00149_e00.00215900.00%
cpd00205_e0EX_cpd00205_e00.00215900.00%
cpd00254_e0EX_cpd00254_e00.00215900.00%
cpd10516_e0EX_cpd10516_e00.00863500.00%
cpd17041_c0rxn13782_c00.697100.00%
cpd17042_c0rxn13783_c00.697100.00%
cpd17043_c0rxn13784_c00.697100.00%

Secretion

\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
MetaboliteReactionFluxC-NumberC-Flux
cpd00001_e0EX_cpd00001_e0-17.7500.00%
cpd00007_e0EX_cpd00007_e0-0.021600.00%
cpd00011_e0EX_cpd00011_e0-2.538199.41%
cpd00067_e0EX_cpd00067_e0-4.86500.00%
cpd15378_e0EX_cpd15378_e0-0.00215970.59%
cpd11416_c0SK_cpd11416_c0-0.697100.00%
" ], "text/plain": [ "" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cobra_model.medium = media\n", "cobra_model.summary()" ] }, { "cell_type": "code", "execution_count": 13, "id": "d5b69daa-d168-45b9-a4a0-12c787dc8464", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'cpd00149_e0': (-100, 100),\n", " 'cpd00099_e0': (-100, 100),\n", " 'cpd00067_e0': (-100, 100),\n", " 'cpd00063_e0': (-100, 100),\n", " 'cpd00058_e0': (-100, 100),\n", " 'cpd00048_e0': (-100, 100),\n", " 'cpd00034_e0': (-100, 100),\n", " 'cpd00030_e0': (-100, 100),\n", " 'cpd00013_e0': (-100, 100),\n", " 'cpd00009_e0': (-100, 100),\n", " 'cpd00001_e0': (-100, 100),\n", " 'cpd00007_e0': (-10, 100),\n", " 'cpd00205_e0': (-100, 100),\n", " 'cpd00254_e0': (-100, 100),\n", " 'cpd00971_e0': (-100, 100),\n", " 'cpd10515_e0': (-100, 100),\n", " 'cpd10516_e0': (-100, 100),\n", " 'cpd11574_e0': (-100, 100),\n", " 'cpd00244_e0': (-100, 100),\n", " 'cpd00027_e0': (-5, 100)}" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "media.get_media_constraints()" ] }, { "cell_type": "code", "execution_count": null, "id": "567aa5c0-280d-434e-8de0-9a7b07b16f93", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.12" } }, "nbformat": 4, "nbformat_minor": 5 }