fillEnzConcs Uses the protein concentrations from protData to fill model.ec.concs. Protein levels should be provided in mg/gDCW. If no data is provided a particular protein, its level is NaN. Existing entries in model.ec.concs are overwritten. Input: model an ecModel in GECKO 3 format (with ecModel.ec structure) protData structure with proteome data, from loadProtFluxData uniprotIDs cell arrray with Uniprot IDs matching protData.abundances abundances matrix of proteomics data dataCol number indicating the column in protData.abundances that contains the relevant protein concentrations (protData may contain data from multiple conditions/samples/experiments, each with their own column in protData.abundances. Optional, default = 1. Output: model an ecModel where model.ec.concs is populated with protein concentrations. Note: to also constrain the model with the content of model.ec.concs, you should run constrainEnzConcs. Usage: model = fillEnzConcs(model, protData)
0001 function model = fillEnzConcs(model, protData, dataCol) 0002 % fillEnzConcs 0003 % Uses the protein concentrations from protData to fill model.ec.concs. 0004 % Protein levels should be provided in mg/gDCW. If no data is provided 0005 % a particular protein, its level is NaN. Existing entries in 0006 % model.ec.concs are overwritten. 0007 % 0008 % Input: 0009 % model an ecModel in GECKO 3 format (with ecModel.ec structure) 0010 % protData structure with proteome data, from loadProtFluxData 0011 % uniprotIDs cell arrray with Uniprot IDs matching 0012 % protData.abundances 0013 % abundances matrix of proteomics data 0014 % dataCol number indicating the column in protData.abundances that 0015 % contains the relevant protein concentrations (protData may 0016 % contain data from multiple conditions/samples/experiments, 0017 % each with their own column in protData.abundances. 0018 % Optional, default = 1. 0019 % 0020 % Output: 0021 % model an ecModel where model.ec.concs is populated with protein 0022 % concentrations. 0023 % 0024 % Note: to also constrain the model with the content of model.ec.concs, you 0025 % should run constrainEnzConcs. 0026 % 0027 % Usage: 0028 % model = fillEnzConcs(model, protData) 0029 0030 if nargin < 3 || isempty(dataCol) 0031 dataCol = 1; 0032 end 0033 0034 uniprotIDs = protData.uniprotIDs; 0035 abundances = protData.abundances(:,dataCol); 0036 0037 %Redefine an empty model.ec.concs vector 0038 model.ec.concs=nan(numel(model.ec.enzymes),1); 0039 0040 [a,b] = ismember(uniprotIDs, model.ec.enzymes); 0041 model.ec.concs(b(a)) = abundances(a); 0042 end