findEpistaticInteractions

PURPOSE ^

findEpistaticInteractions Finds synthetic lethal and/or synthetic sick

SYNOPSIS ^

function [interactions,epistaticEffect] = findEpistaticInteractions(model,doubleDeletionFitness,lethalFlag,minEffect)

DESCRIPTION ^

findEpistaticInteractions Finds synthetic lethal and/or synthetic sick
interactions based on double deletion analysis data

 [interactions,epistaticEffect] = findEpistaticInteractions(model,doubleDeletionFitness,lethalFlag,minEffect)

INPUTS
 model                 COBRA model structure
 doubleDeletionFitness A matrix of fitness (or growth rate) values for
                       each of the double deletion strains. The diagonal
                       of this matrix contains the single deletion fitness
                       values.

OPTIONAL INPUTS
 lethalFlag            Only consider SL interactions (Default = false)
 minEffect             Minimum fitness effect considered to be significant
                       (Default = 1e-2)
 
OUTPUTS
 interactions          A sparse binary matrix indicating a SL or SS
                       interaction between two genes in the model
 epistaticEffect       Magnitude of the epistatic interaction defined as
                       min(f1-f12,f2-f12) where f1 and f2 are the fitness
                       values for the deletion strain of gene 1 and gene 2
                       respectively and f12 is the fitness value for the
                       double deletion strain of genes 1 and 2
 
 The criteria for establishing a synthetic sick interaction are that the
 double deletion strain fitness must be at least minEffect lower than the
 fitness of either of the single deletion strains, i.e. 
       f12 < f1-minEffect and f12 < f2-minEffect

 The additional criterion for establishing a synthetic lethal interaction
 is that the double deletion fitness value is smaller than minEffect (i.e.
 essentially zero)
       f12 < minEffect
 
 Note that the interactions matrix double counts all interactions

 Markus Herrgard 1/17/07

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function [interactions,epistaticEffect] = findEpistaticInteractions(model,doubleDeletionFitness,lethalFlag,minEffect)
0002 %findEpistaticInteractions Finds synthetic lethal and/or synthetic sick
0003 %interactions based on double deletion analysis data
0004 %
0005 % [interactions,epistaticEffect] = findEpistaticInteractions(model,doubleDeletionFitness,lethalFlag,minEffect)
0006 %
0007 %INPUTS
0008 % model                 COBRA model structure
0009 % doubleDeletionFitness A matrix of fitness (or growth rate) values for
0010 %                       each of the double deletion strains. The diagonal
0011 %                       of this matrix contains the single deletion fitness
0012 %                       values.
0013 %
0014 %OPTIONAL INPUTS
0015 % lethalFlag            Only consider SL interactions (Default = false)
0016 % minEffect             Minimum fitness effect considered to be significant
0017 %                       (Default = 1e-2)
0018 %
0019 %OUTPUTS
0020 % interactions          A sparse binary matrix indicating a SL or SS
0021 %                       interaction between two genes in the model
0022 % epistaticEffect       Magnitude of the epistatic interaction defined as
0023 %                       min(f1-f12,f2-f12) where f1 and f2 are the fitness
0024 %                       values for the deletion strain of gene 1 and gene 2
0025 %                       respectively and f12 is the fitness value for the
0026 %                       double deletion strain of genes 1 and 2
0027 %
0028 % The criteria for establishing a synthetic sick interaction are that the
0029 % double deletion strain fitness must be at least minEffect lower than the
0030 % fitness of either of the single deletion strains, i.e.
0031 %       f12 < f1-minEffect and f12 < f2-minEffect
0032 %
0033 % The additional criterion for establishing a synthetic lethal interaction
0034 % is that the double deletion fitness value is smaller than minEffect (i.e.
0035 % essentially zero)
0036 %       f12 < minEffect
0037 %
0038 % Note that the interactions matrix double counts all interactions
0039 %
0040 % Markus Herrgard 1/17/07
0041 
0042 if (nargin < 3)
0043     lethalFlag = false;
0044 end
0045 if (nargin < 4)
0046     minEffect = 1e-2;
0047 end
0048 
0049 nGenes = length(model.genes);
0050 
0051 singleDeletionFitness = diag(doubleDeletionFitness);
0052 
0053 interactions = sparse(nGenes,nGenes);
0054 epistaticEffect = zeros(nGenes,nGenes);
0055 
0056 for i = 1:nGenes
0057     fitness1 = singleDeletionFitness(i);
0058     for j = i+1:nGenes        
0059         fitness2 = singleDeletionFitness(j);
0060         fitness12 = doubleDeletionFitness(i,j);
0061         isInteraction = fitness12 < fitness1-minEffect &  fitness12 < fitness2-minEffect;
0062         if (lethalFlag)
0063             isInteraction = isInteraction & fitness12 < minEffect;
0064         end
0065         if (isInteraction)
0066                 interactions(i,j) = 1;
0067                 interactions(j,i) = 1;
0068                 epistaticEffect(i,j) = min(fitness1-fitness12,fitness2-fitness12);
0069                 epistaticEffect(j,i) = min(fitness1-fitness12,fitness2-fitness12);
0070             end
0071         end
0072     end
0073 end

Generated on Thu 21-Jun-2012 15:39:23 by m2html © 2003