Hi all,
Iam building a code in bioinformatics field.. I have 2 matrix comeing from a certain code as follows:
in each matrix, the first column is the parent of the second one... I need from the code to find the part of graph which can determine all relations between these cells... I have to find cell from column 1 that occurance in column 2, then take the cell from column 1 but from the same row of column 2 and find the similarity between it and onother cell in column 2 .. and so.. it is something like depth first search in graph theory
In general, How can I make a dynamic code (recursive) that can replace the following if statements:
Note that the if statemtnes are not determined( it depends on m1 & m2 which are also not always constants)
Iam building a code in bioinformatics field.. I have 2 matrix comeing from a certain code as follows:
m1 = 'GO:0008150' 'GO:0016740' 'GO:0016740' 'GO:0016787' 'GO:0016787' 'GO:0006810' 'GO:0008150' 'GO:0006412' 'GO:0016740' 'GO:0004672' 'GO:0016740' 'GO:0016779' 'GO:0016787' 'GO:0004386' 'GO:0016787' 'GO:0003774' 'GO:0016787' 'GO:0016298' 'GO:0006810' 'GO:0016192' m2 = 'GO:0008150' 'GO:0016787' 'GO:0008150' 'GO:0006810' 'GO:0006810' 'GO:0006412' 'GO:0016192' 'GO:0003774' 'GO:0006810' 'GO:0005215' 'GO:0005215' 'GO:0030533'
in each matrix, the first column is the parent of the second one... I need from the code to find the part of graph which can determine all relations between these cells... I have to find cell from column 1 that occurance in column 2, then take the cell from column 1 but from the same row of column 2 and find the similarity between it and onother cell in column 2 .. and so.. it is something like depth first search in graph theory
In general, How can I make a dynamic code (recursive) that can replace the following if statements:
for k=1:length(m1) for ii=1:length(m1) for j=1:length(m1) for i=1:length(m2) for e=1:length(m1) if isequal(m2{i,1},m1{j,2}) x1=[m1(j,1) m2(i,2)]; x11=[x1;x11]; if isequal(m1{j,1},m1{k,2}) x2=[m1(k,1),m2(i,2)]; x22=[x2;x22]; if isequal(m1{k,1},m1{ii,2}) x3=[m1(ii,1),m2(i,2)]; x33=[x3;x33]; if isequal(m1{ii,1},m1{e,2}) x4=[m1(e,1),m2(i,2)]; x44=[x4;x44]; . . and so..x_total=[x11;x22;x33;x44...] end end end end end end end
Note that the if statemtnes are not determined( it depends on m1 & m2 which are also not always constants)