Levenshtein SubString mas corto
Publicado por wildead (2 intervenciones) el 30/10/2016 21:37:47
He recibido una tarea para realizar en python que trata sobre Levenshtein.
En este caso se me presenta un fichero de texto con un montón de Línias de bases de ADN
ATCG de un cromosoma. En dicho texto he de encontrar de cada una de las 10 primeras línias (solo las 10 primeras) La distancia mínima de Levenshtein dado un patrón de cadena de ADN y a continuación el String más parecido de dicho patrón de ADN.
En lo que llevo trabajando en esto he conseguido leer el fichero y que me busque la distancia minimia de las 10 primeras líneas. El problema surge a la hora de sacar el String más corto de cada línea, he estado practicando y haciendo cosas, por ejemplo he buscado el mínimo de cada una de las filas de la matriz para sacar el String pero debido a que en la matriz se crean varios valores en la misma fila con el mismo valor, me coge siempre el más pequeño que encuentra empezando por la izquierda, por lo que en vez de estar haciendo el mínimo de [i-1][j], [i][j-1], [i-1][j-1] estoy cogiendo otra letra.
La idea es que a partir del mínimo de la ultima línea consigas sacar el String más corto, hacer el levenshtein pero a la inversa para sacar el String.
En este caso se me presenta un fichero de texto con un montón de Línias de bases de ADN
ATCG de un cromosoma. En dicho texto he de encontrar de cada una de las 10 primeras línias (solo las 10 primeras) La distancia mínima de Levenshtein dado un patrón de cadena de ADN y a continuación el String más parecido de dicho patrón de ADN.
En lo que llevo trabajando en esto he conseguido leer el fichero y que me busque la distancia minimia de las 10 primeras líneas. El problema surge a la hora de sacar el String más corto de cada línea, he estado practicando y haciendo cosas, por ejemplo he buscado el mínimo de cada una de las filas de la matriz para sacar el String pero debido a que en la matriz se crean varios valores en la misma fila con el mismo valor, me coge siempre el más pequeño que encuentra empezando por la izquierda, por lo que en vez de estar haciendo el mínimo de [i-1][j], [i][j-1], [i-1][j-1] estoy cogiendo otra letra.
La idea es que a partir del mínimo de la ultima línea consigas sacar el String más corto, hacer el levenshtein pero a la inversa para sacar el String.
Valora esta pregunta


0