Biostatistics Project
Link to the python notebook this link
run_model_reconstruction from gsmm.csm.build_csm: Used for running the model reconstruction pipeline.cobra: A package for constraint-based reconstruction and analysis.GSMM package can be downloaded with pip install gsmm from PyPI site
emt_expression_data_path: Path to the CSV file containing the EMT expression data.emt_expression_data: DataFrame holding the loaded EMT expression data.recon_model: The Recon3D model loaded from a web source using COBRApy.
This step loads the Recon3D model, a comprehensive genome-scale metabolic model. Recon3D integrates metabolic data from various human tissues and is widely used for studying human metabolism.
Ebrahim, A., Lerman, J. A., Palsson, B. O., & Hyduke, D. R. (2013).
COBRApy: COnstraints-Based Reconstruction and analysis for Python.
BMC Systems Biology, 7(1), 74. doi:10.1186/1752-0509-7-74
In COBRApy, a SBML model is structured as follows:
Model: The core object representing the metabolic model. It contains several attributes and methods to manipulate and analyze the model.
reactions: A list of Reaction objects representing the biochemical reactions in the model.metabolites: A list of Metabolite objects representing the metabolites in the model.genes: A list of Gene objects representing the genes associated with the reactions.objective: The objective function of the model, typically used in flux balance analysis (FBA).id: A unique identifier for the model.name: A descriptive name for the model.optimize(): Performs flux balance analysis to optimize the objective function.summary(): Provides a summary of the model, including the number of reactions, metabolites, and genes.Reaction: Represents a biochemical reaction in the model.
id: A unique identifier for the reaction.name: A descriptive name for the reaction.metabolites: A dictionary of Metabolite objects and their stoichiometric coefficients in the reaction.lower_bound: The lower bound of the reaction flux.upper_bound: The upper bound of the reaction flux.add_metabolites(metabolites): Adds metabolites to the reaction.remove_metabolites(metabolites): Removes metabolites from the reaction.Metabolite: Represents a metabolite in the model.
id: A unique identifier for the metabolite.name: A descriptive name for the metabolite.formula: The chemical formula of the metabolite.compartment: The compartment where the metabolite is located.Gene: Represents a gene in the model.
id: A unique identifier for the gene.name: A descriptive name for the gene.reactions: A list of Reaction objects associated with the gene.Recon3D model as the parent modelRecon3D as .xml file.Reconstruction algorithm in gsmm needs,
parent_model_path: Recon3D in this case.base_model_path: All the unneccessary genes, reactions and metabolites are removed, then the model is saved as base_model.gene_id_column: Expression data in our case has gene ids in the column called Gene_ID. We need to tell the algorithm that this is our gene id column.run_model_reconstruction(..) takes care of the interface to run the main pipeline for reconstructing an optimized metabolic model from the provided expression data. It handles exceptions and prints error messages if reconstruction fails, returning None in case of errors.
Link to the python notebook this link
model_names with their associated paths in a dictgsmmanalyse_and_save_fluxes(..) is a function that carries all the analysis and saves the data for further analysis to be utilised by visualisation module
from gsmm.csm.visualisation import plot_fluxes
plot_fluxes('flux_data.pkl',
'sink_flux_data.pkl',
True)model_paths above.Clustermap of Reaction rates (Fluxes) in different Context Specific Models
Pearson Correlation coefficients of All the Reaction Fluxes compared across the models
Pearson Correlation coefficients of Sink Reaction fluxes, in this case it shows insignificance
Similarly, two or more models can be compared to get the relevant plot for significant observations.