Analysis¶
- compareModelsFeatures(models, param)[source]¶
Compare the information of different COBRA models including dimentions, essential pathways, main energy sources, etc.
- USAGE:
[comparisonResults, comparisonTable] = compareModelsFeatures (models, param)
- INPUT:
models – Struct file containing the models to compare
param – a structure containing the parameters for the function: * .comparisons -Cell array indicating the type of comparison that
- will be performed (Default: all):
‘compartments’: Check the metabolites on each of the cellular compartments.
‘uniqueElements’: Check the genes, metabolites and reactions present unique for each model.
‘fluxAnalysis’: Uses the selected objective function to predict the flux in different metabolic pathways
‘sparseFBA’: Identify the number of essential reactions per model
‘predictiveCapacity’: Using the selected objective function, test the predictive capacity of the models
- .objectives -The objective that will be used, includes the
optimization of reactions or objectives (Default: unWeightedTCBMflux): - ‘unWeighted0norm’ min 0-norm unweighted. - ‘Weighted0normGE’ min 0-norm weighted by the gene expression. - ‘unWeighted1norm’ min 1-norm unweighted - ‘Weighted1normGE’ min 1-norm weighted by the gene expression - ‘unWeighted2norm’ min 2-norm unweighted - ‘Weighted2normGE’ min 2-norm weighted by the gene expression - {‘unWeightedTCBMflux’} unweighted thermodynamic constraint
based modelling for fluxes
‘unWeightedTCBMfluxConc’ unweighted thermodynamic constraint based modelling for fluxes and concentrations
- .groups - Uses a common string to group the models together
(e.g., ‘controlGroup’)
.printLevel - Verborese level
- .trainingSet - Table with the training set. It includes the
reaction identifier, the reaction name, the measured mean flux, standard deviation of the flux, the flux units, and the platform used to measure it (Required for test ‘flux’). An error message refers to this field by the misspelling .trainigSet.
- OUTPUTS:
comparisonResults – Struct array with all data obtained
comparisonTable – Table summarising the analysis
- compareXomicsModels(multiModels, printFlag)[source]¶
Compare generated models in mets, rxns, genes
- USAGE:
[overlapResults, statistic] = compareXomicsModels (multiModels, printFlag)
- INPUT:
multiModels – struct format with models that need to compare e.g.multimodels.model1
multimodels.model2 …
printFlag – 1 if information should be printed to a table. Default = 0
- OUTPUT:
overlapResults – the overlapped met/rxn/gene numbers of each pair of models
statistic – the overlapped porportion matrix of each pair of models
Example
[overlapResults, statistic] = compareXomicsModels(multiModels)
Note
This function is used to compare generated models from xomicsToModel pipeline
- coreMetRxnAnalysis(oldModel, model, coreMetAbbr, coreRxnAbbr, deletedMets, deletedRxns, param)[source]¶
compares the set of core metabolites and reactions with the current model report the core metabolites and reactions removed reduce the set of core metabolites and reactions
- USAGE:
[coreMetAbbrNew, coreRxnAbbrNew] = coreMetRxnAnalysis (oldModel,model, coreMetAbbr, coreRxnAbbr, deletedMets, deletedRxns, param)
- INPUTS:
oldModel – model prior to adjustment, with the following fields:
.mets - m x 1 metabolite identifiers
.rxns - n x 1 reaction identifiers
model – new model after adjustments, with the following fields:
.mets - m x 1 metabolite identifiers
.rxns - n x 1 reaction identifiers
coreMetAbbr – core metabolite identifiers
coreRxnAbbr – core reaction identifiers
- OPTIONAL INPUTS:
deletedMets – set of metabolites removed from oldModel. If empty, given by setdiff(oldModel.mets, model.mets)
deletedRxns – set of reactions removed from oldModel. If empty, given by setdiff(oldModel.rxns, model.rxns)
param – a structure containing the parameters for the function:
.printLevel - verbose level controlling printed output
.message - label describing the adjustment being analysed (Default: ‘deletion’)
- OUTPUTS:
coreMetAbbrNew – set of core metabolites in the new model
coreRxnAbbrNew – set of core reactions in the new model
EXAMPLE:
NOTE:
Author(s):
- debugXomicsToModel(genericModel, directory, modelGenerationReport, coreData)[source]¶
Examine the debug files generated by the XomicsToModel function for metabolites, reactions, and genes of interest to determine whether or not they were removed during the XomicsToModel process.
- USAGE:
debugXomicsToModel (genericModel, directory, modelGenerationReport, coreData)
- INPUT:
genericModel – The generic input COBRA model used in XomicsToModel, with fields:
.genes - gene identifiers (Entrez IDs)
.rxns - n x 1 reaction identifiers
.mets - m x 1 metabolite identifiers
.lb - n x 1 lower flux bounds
.c - n x 1 linear objective coefficient vector
directory – Folder where the debug files are located
modelGenerationReport – Report struct produced by XomicsToModel; when non-empty its fields provide the core lists to examine:
.coreRxnAbbr0 - core reaction identifiers
.coreMetAbbr0 - core metabolite identifiers
.activeEntrezGeneID0 - active gene identifiers (Entrez IDs)
coreData – List of metabolites, reactions and genes to examine in order to determine whether or not they were removed during the XomicsToModel process:
.genes - List of Entrez gene IDs to check
.rxns - List of reactions IDs to check
.mets - List of metabolites IDs to check
- metUtilisation(model, met, flux_v, printFig, param)[source]¶
metUtilisation - a graph analysis of reactions producing and consuming given metabolite
This function can be used to visualise the fluxes of the reactions that either produce or consume certain metabolite. User can choose whether to only study a generic topography or add flux estimation to the graph to visualise the major producers and consumers of a metabolite. Flux can be given either as a single vector, as a pair of vector for a comparison between two different predictions, or as a sampling matrix, in which case a meana and standard deviation will be used to estimate idividual contributions of each reaction to the total metabolite balance
- USAGE:
[graph, summary] = metUtilisation (model,mets, flux_v, printFig, param)
- INPUT:
model – A generic COBRA model
.S - Stoichiometric matrix
.mets - Metabolite ID vector
.rxns - Reaction ID vector
.lb - Lower bound vector
.ub - Upper bound vector
met – A string with metabolite ID with or without compartment information (e.g. ‘atp[c]’ or ‘atp’) as found in model.mets; if no compartment information provided, function will include all compartments for the analysis
- OPTIONAL INPUTS:
flux_v – A single flux distribution vector (as obtained from optimisation algorithm, e.g. FBA) or a matrix (if obtained from flux sampling). Or an array [control_v perturbation_v] containing two flux vectors provided to perform a comparison between two conditions. The first vector is then used as a control, and second as a perturbation to be plotted. Or a matrix containing the results of the flux sampling algorithm. (default = {})
printFig – Logical, whether figure should be printed out (default = 1)
param – a structure containg additional parameters for the function and plotting:
- .treshold_v - flux value below which reaction is
considered active (default = 1e-6)
- .NodeLabels - what value should be plotted as a
node edge: ‘rxns’ for reaction abbreviation or ‘rxnNames’ for a full reaction name (default = ‘rxns’)
- .EdgeLabel.rxns - cell array containg reaction IDs
(in the format of model.rxns)
- .EdgeLabel.text - cell array containg labels to be
ploted on the graph edges (same length as EdgeLabel.rxns)
.saveFig - logical value, whether figure
should be save * .modelName - character, which will be used when save the figure
- OUTPUTS:
- graph – matlab graph with metabolite as a central node and reactions
producing (left) and consuming (right) metabolite as nodes, if v is provided, the tickness of edges (weight) represents a relative contribution of each reaction to the metabolite utilisation
- graph_data: additional data used for plotting (can be used to modify
- final graph aesthetics)
.edgeLabels - labels used to describe edges
.LWidths - scaled widths of edges based on the weights
- .graph - matlab graph with metabolite as a central
node and reactions producing (left) and consuming (right) metabolite as nodes, if v is provided, the tickness of edges (weight) represents a relative contribution of each reaction to the metabolite utilisation
.eColour - colours used for the edges
.nLabels - labels used to describe nodes
- summary: table consisting of all reactions (rxns) identified as nodes,
together with their full reaction name (rxnNames), ID in the model (rxnsIDs), stoichimeric coefficient (scoff) representing if metabolite is consumed (-1) or produced (1) by the reaction, reaction formulas, flux values, either as a single flux vector, a pair of vectors used for comparison (flux_v1, flux_v2) or summary statistics from flux sampling data (mean, median, mode, and standard deviation), and in case of the comparison between two flux vectors, labels showing the relative increase, decrease or no change between the two vectors
- Author(s): Agnieszka Wegrzyn
Y
- plotOverlapResults(overlapresults, statistic, savepath)[source]¶
Plot the overlapped heatmap for each model with proportion text labels
- USAGE:
plotOverlapResults (overlapresults, statistic, savepath)
- INPUTS:
overlapresults – overlap result struct from compareXomicsModels.m, with fields:
.mets - overlap data structure for metabolites
.rxns - overlap data structure for reactions
.genes - overlap data structure for genes
statistic – overlap statistics struct from compareXomicsModels.m, with fields:
.overlapnumber_mets - table of overlapped metabolite counts (RowNames give the model names)
.overlapproportion_mets - table of overlapped metabolite proportions
.overlapproportion_rxns - table of overlapped reaction proportions
.overlapproportion_genes - table of overlapped gene proportions
- OPTIONAL INPUT:
savepath – the path to save the plot
- OUTPUT:
a heat map plot is produced (this function has no return value)
use proportion data to create map
- quanQualAcc(validationData, predictedFlux, param)[source]¶
Compute the quantitative and qualitative accuracy of predicted fluxes against experimental validation data
- USAGE:
[comparisonData] = quanQualAcc (validationData, predictedFlux, param)
- INPUTS:
validationData – table of experimental validation data, with fields:
.rxns - reaction identifiers of the measured exchanges
.mean - measured mean flux for each reaction
.SD - standard deviation of the measured flux
predictedFlux – predicted flux vector to compare against validationData
- OPTIONAL INPUT:
param – a structure containing the parameters for the function:
.boundPrecisionLimit - flux magnitude below which a value is treated as zero (Default: LP feasibility tolerance x 10)
- OUTPUT:
comparisonData – struct with the comparison results:
.fullReport - table comparing each measured reaction with its predicted flux
.comparisonStats - table of predictive-capacity statistics