Matlab - matlab DNA barcoding

 
Vista:

matlab DNA barcoding

Publicado por Javier Rodriguez Perez (1 intervención) el 17/07/2015 20:56:59
hola a todos, no se si han oido hablar de la tecnica bardcoding para diferenciar especies entre otras utilidades, estoy intentando crear un programa con este fin, (si alguen conoce algun toolbox o algo de eso me vendria genial), es un programa largo y complejo y aun voy por el principio, el caso es que me he atrancado intentando meter los resultados de un bucle en una matriz voy a intentar explicrme:
en primer lugar hay que leer un vector cadena que se trata del genoma de alguna especie, (el genoma entero ya q son bacterias con poca cantidad de adn) y nos dice las veces q se repite una frase concreta de por ejemplo 3 nucleotidos
par ello primero he calculado cuantas frase diferentes la longitud K se pueden hacer con los 4 nucleotidos:
base=['a' 'c' 't' 'g'];
a=char(zeros(k, 4^k));
for k2=1:k
k1=1:4^k;
a(k2,:)=base(fix(mod(k1-1,4^k2)/4^(k2-1))+1);
end
puede invocar como a(:,i). O dicho de otra forma, todas las "palabras" posibles de tamaño k se pueden listar/recorrer con el bucle:
for i=1:4^k
a(:,i)
end;
bien pues ahora se mete la cadena problema (cad) y:
M=[]
for i=1:length(a) % recorre la cadena matriz de las combinaciones posibles
b=a(:,i)' % pasa las columnas (diff palabras) a fila para que las pueda leer strfind que lee filas
strfind(cad,b) % compara las filas de las diff combinaciones con las palabras de K
s= length (strfind(cad,b))
M=s % aqui quiero hacer la matriz donde se recogen las salidas d s en una columna los primeros mil nucleotidos
end

gracias de antemano, no se si me he explicado bien saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder