Enzyme & EC data#
MATLAB functions in GECKO/src/get_enzyme_data of the GECKO toolbox.
Functions#
Function |
Summary |
|---|---|
Copy EC numbers from ecModel.ec.eccodes to ecModel.eccodes. |
|
Calculate the molecular weight of a protein. |
|
Look up EC numbers for a reaction's gene set in a UniProt or KEGG index. |
|
Populate model.ec.eccodes from UniProt and KEGG databases. |
|
Populate model.ec.eccodes from the model.eccodes field. |
|
Build a single string of EC numbers for a protein. |
Reference#
applyECcodes#
function ecModel = applyECcodes(ecModel, varargin)
Copy EC numbers from ecModel.ec.eccodes to ecModel.eccodes.
Copies the EC numbers stored in the ecModel.ec structure across to the top-level ecModel.eccodes field.
Parameters
ecModel: structan ecModel in GECKO 3 format (with ecModel.ec structure).
Name-Value Arguments
overwrite: logicalwhether existing (non-empty) ecModel.eccodes entries should be overwritten by a non-empty ecModel.ec.eccodes entry. Empty ecModel.eccodes entries are always overwritten if possible (default false). An empty ecModel.ec.eccodes source entry is never copied, so it can never erase an existing annotation.
Returns
ecModel: structecModel with populated model.eccodes.
Examples
% optional arguments may be given positionally or as name-value pairs:
ecModel = applyECcodes(ecModel, true);
ecModel = applyECcodes(ecModel, 'overwrite', true);
calculateMW#
function MW = calculateMW(sequence)
Calculate the molecular weight of a protein.
Calculates the molecular weight of a protein from its amino acid sequence. Matching is case-insensitive. Sequences with no recognized residue (including an empty sequence) return NaN, rather than being mistaken for an 18 Da protein.
Parameters
sequence: charthe amino acid sequence (can include extra things such as spaces or numbers, which are ignored).
Returns
MW: doublethe molecular weight in Da, or NaN if no residue was recognized.
findECInDB#
function [EC,conflicts] = findECInDB(gene_set, DBecNum, DBMW, geneIndex, geneHashMap)
Look up EC numbers for a reaction's gene set in a UniProt or KEGG index.
For each gene, finds its matching database entries and takes the EC number of the lightest-weight matching protein when a single EC number applies to that gene; genes with several distinct EC numbers among their matches are also reported as conflicts (the first match is still used for EC). Genes without an EC number are left out. When gene_set has more than one gene (an enzyme complex), the numbers found for each gene are combined by intersection where they share a match (a wildcard such as "1.1.1.-" matches the specific codes of its prefix), otherwise by union. The EC set of every gene set, one gene or a complex, is cleaned of a wildcard code such as "1.1.1.-" when a more specific code of the same prefix ("1.1.1.4") is present; only codes with four levels take part, and empty codes are removed.
Parameters
gene_set: cellgenes from a given metabolic reaction.
DBecNum: cellarray of EC numbers.
DBMW: doublearray of molecular weights in Da.
geneIndex: cellas generated by getECfromDatabase.
geneHashMap: containers.Mapas generated by getECfromDatabase.
Returns
EC: charEC numbers that apply to gene_set, each prefixed with "EC" and separated by ";" (e.g. "EC1.1.1.1;EC1.1.1.2").
conflicts: cellgenes with multiple protein matches.
Examples
[EC, conflicts] = findECInDB(gene_set, DBecNum, DBMW, geneIndex, geneHashMap);
See also
getECfromDatabase, getECstring
getECfromDatabase#
function model = getECfromDatabase(model, varargin)
Populate model.ec.eccodes from UniProt and KEGG databases.
Populates the model.ec.eccodes field with enzyme codes that are extracted from UniProt and KEGG databases, as assigned to the proteins that catalyze the specific reactions.
Parameters
model: structan ecModel in GECKO 3 format (with ecModel.ec structure).
Name-Value Arguments
ecRxns: logicalof length model.ec.rxns that specifies which model.ec.eccodes entries should be queried. Existing values in model.ec.eccodes will be wiped. Entries that are indicated by false will be kept and not modified by this function, and are not searched for multiplicities. An empty logical array selects no entry, and the model is returned unchanged. When ecRxns is omitted or [], all model.ec.eccodes entries are populated by this function.
action: charresponse action if multiple proteins with different EC numbers are found for a given gene in a metabolic reaction (default 'display'):
'display' gives a warning that lists all found multiplicities and uses the protein with the lowest index in the database.
'ignore' ignores multiplicities and uses the protein with the lowest index in the database.
Any other action raises getECfromDatabase:unsupportedAction.
modelAdapter: ModelAdaptera loaded model adapter (default: the current default model adapter).
Returns
model: structecModel with populated model.ec.eccodes.
Examples
% optional arguments may be given positionally or as name-value pairs:
model = getECfromDatabase(model, ecRxns, action, modelAdapter);
model = getECfromDatabase(model, 'action', 'ignore');
See also
getECfromGEM, findECInDB, loadDatabases
getECfromGEM#
function [model, invalidEC, invalidECpos] = getECfromGEM(model, varargin)
Populate model.ec.eccodes from the model.eccodes field.
Uses the model.eccodes to populate the model.ec.eccodes field. EC numbers must be formatted as four numbers separated by periods, possibly with trailing wildcards; incorrectly formatted EC numbers are skipped. A model without a model.eccodes field gives a warning and every EC number is empty.
Parameters
model: structan ecModel in GECKO 3 format (with ecModel.ec structure).
Name-Value Arguments
ecRxns: logicalof length model.ec.rxns that specifies for which reactions the existing model.ec.eccodes entry should be kept and not modified by this function (by default all model.ec.eccodes entries are populated by this function).
Returns
model: structecModel with populated model.ec.eccodes.
invalidEC: cellincorrectly formatted EC numbers.
invalidECpos: doubleposition of invalidEC in model.eccodes.
Notes
Valid EC numbers are e.g. 1.2.3.4 or 1.2.3.-, while invalid EC numbers are 1.2.3 or 1_2_3_4. Multiple EC numbers are separated by ; for instance 1.2.3.4;1.2.3.5 not 1.2.3.4|1.2.3.5.
Examples
% optional arguments may be given positionally or as name-value pairs:
[model, invalidEC, invalidECpos] = getECfromGEM(model, ecRxns);
[model, invalidEC, invalidECpos] = getECfromGEM(model, 'ecRxns', ecRxns);
See also
getECfromDatabase, applyECcodes
getECstring#
function EC_set = getECstring(EC_set,ecNumbers)
Build a single string of EC numbers for a protein.
Provides a single string with all the EC numbers associated to a given protein, according to the following format: "ECX.X.X.X ECX.X.X.X ECX.X.X.X".
Parameters
EC_set: charexisting EC string to which the EC numbers are appended.
ecNumbers: charEC numbers associated to the protein, separated by white space and/or semicolons.
Returns
EC_set: chara single string with all the EC numbers, each prefixed with "EC".
Examples
EC_set = getECstring(EC_set, ecNumbers);
See also
findECInDB In case of several ec numbers for the same protein