Encontrar codón de inicio y trabajar a partir de él
Publicado: 2013-02-21 18:35 @815
Hola a todos. Estoy empezando en el mundillo éste del Perl, y haciendo uno de mis primeros programas me ha surgido una duda.
Estoy haciendo un programa bastante básico: a partir de un archivo FASTA, tengo que abrirlo y a partir de él hacer que aparezcan por pantalla las siguientes informaciones
- Nombre del organismo
- AC del producto génico
- Longitud de la cadena de nucleótidos
- Secuencia Proteica
- Longitud de la cadena de aminoácidos
Los 3 primeros puntos ya los he conseguido, pero a partir del 4 me quedo trabado. El archivo FASTA es el siguiente:
En el paso 4 me indica que muestre por pantalla la secuencia de dicha proteína. Mi problema viene a la hora de que no sé cómo hacer para que el programa sólo empiece a procesarme los codones a partir del primer codón ATG, que no está al principio de la secuencia génica, sino algo después: es decir, necesito alguna función que me permita "desechar" todo lo que va antes del codón de inicio, y empezar a traducir a partir de ahí (y lo mismo para el primer codón de parada, pero desechando todo lo que venga después).
¿Alguien me podría iluminar sobre cómo hacer esto?
¡Muchísimas gracias!
Estoy haciendo un programa bastante básico: a partir de un archivo FASTA, tengo que abrirlo y a partir de él hacer que aparezcan por pantalla las siguientes informaciones
- Nombre del organismo
- AC del producto génico
- Longitud de la cadena de nucleótidos
- Secuencia Proteica
- Longitud de la cadena de aminoácidos
Los 3 primeros puntos ya los he conseguido, pero a partir del 4 me quedo trabado. El archivo FASTA es el siguiente:
Using text Syntax Highlighting
>gi|624185|gb|U18423.1|OS=Homo sapiens|Human spinal muscular atrophy gene product mRNA, complete cds
CGGGGCCCCACGCTGCGCATCCGCGGGTTTGCTATGGCGATGAGCAGCGGCGGCAGTGGTGGCGGCGTCCCGGAGCAGGAGGATTCCGTGCTGTTCCGGCGCGGCACAGGCCAGAGCGATGATTCTGACATTTGGGATGATACAGCACTGATAAAAGCATATGATAAAGCTGTGGCTTCATTTAAGCATGCTCTAAAGAATGGTGACATTTGTGAAACTTCGGGTAAACCAAAAACCACACCTAAAAGAAAACCTGCTAAGAAGAATAAAAGCCAAAAGAAGAATACTGCAGCTTCCTTACAACAGTGGAAAGTTGGGGACAAATGTTCTGCCATTTGGTCAGAAGACGGTTGCATTTACCCAGCTACCATTGCTTCAATTGATTTTAAGAGAGAAACCTGTGTTGTGGTTTACACTGGATATGGAAATAGAGAGGAGCAAAATCTGTCCGATCTACTTTCCCCAATCTGTGAAGTAGCTAATAATATAGAACAGAATGCTCAAGAGAATGAAAATGAAAGCCAAGTTTCAACAGATGAAAGTGAGAACTCCAGGTCTCCTGGAAATAAATCAGATAACATCAAGCCCAAATCTGCTCCATGGAACTCTTTTCTCCCTCCACCACCCCCCATGCCAGGGCCAAGACTGGGACCAGGAAAGCCAGGTCTAAAATTCAATGGCCCACCACCGCCACCGCCACCACCACCACCCCACTTACTATCATGCTGGCTGCCTCCATTTCCTTCTGGACCACCAATAATTCCCCCACCACCTCCCATATGTCCAGATTCTCTTGATGATGCTGATGCTTTGGGAAGTATGTTAATTTCATGGTACATGAGTGGCTATCATACTGGCTATTATATGGGTTTCAGACAAAATCAAAAAGAAGGAAGGTGCTCACATTCCTTAAATTAAGGAGAAATGCTGGCATAGAGCAGCACTAAATGACACCACTAAAGAAACGATCAGACAGATCTGGAATGTGAAGCGTTATAGAAGATAACTGGCCTCATTTCTTCAAAATATCAAGTGTTGGGAAAGAAAAAAGGAAGTGGAATGGGTAACTCTTCTTGATTAAAAGTTATGTAATAACCAAATGCAATGTGAAATATTTTACTGGACTCTTTTGAAAAACCATCTGTAAAAGACTGGGGTGGGGGTGGGAGGCCAGCACGGTGGTGAGGCAGTTGAGAAAATTTGAATGTGGATTAGATTTTGAATGATATTGGATAATTATTGGTAATTTTATGGCCTGTGAGAAGGGTGTTGTAGTTTATAAAAGACTGTCTTAATTTGCATACTTAAGCATTTAGGAATGAAGTGTTAGAGTGTCTTAAAATGTTTCAAATGGTTTAACAAAATGTATGTGAGGCGTATGTGGCAAAATGTTACAGAATCTAACTGGTGGACATGGCTGTTCATTGTACTGTTTTTTTCTATCTTCTATATGTTTAAAAGTATATAATAAAAATATTTAATTTTTTTTTA
CGGGGCCCCACGCTGCGCATCCGCGGGTTTGCTATGGCGATGAGCAGCGGCGGCAGTGGTGGCGGCGTCCCGGAGCAGGAGGATTCCGTGCTGTTCCGGCGCGGCACAGGCCAGAGCGATGATTCTGACATTTGGGATGATACAGCACTGATAAAAGCATATGATAAAGCTGTGGCTTCATTTAAGCATGCTCTAAAGAATGGTGACATTTGTGAAACTTCGGGTAAACCAAAAACCACACCTAAAAGAAAACCTGCTAAGAAGAATAAAAGCCAAAAGAAGAATACTGCAGCTTCCTTACAACAGTGGAAAGTTGGGGACAAATGTTCTGCCATTTGGTCAGAAGACGGTTGCATTTACCCAGCTACCATTGCTTCAATTGATTTTAAGAGAGAAACCTGTGTTGTGGTTTACACTGGATATGGAAATAGAGAGGAGCAAAATCTGTCCGATCTACTTTCCCCAATCTGTGAAGTAGCTAATAATATAGAACAGAATGCTCAAGAGAATGAAAATGAAAGCCAAGTTTCAACAGATGAAAGTGAGAACTCCAGGTCTCCTGGAAATAAATCAGATAACATCAAGCCCAAATCTGCTCCATGGAACTCTTTTCTCCCTCCACCACCCCCCATGCCAGGGCCAAGACTGGGACCAGGAAAGCCAGGTCTAAAATTCAATGGCCCACCACCGCCACCGCCACCACCACCACCCCACTTACTATCATGCTGGCTGCCTCCATTTCCTTCTGGACCACCAATAATTCCCCCACCACCTCCCATATGTCCAGATTCTCTTGATGATGCTGATGCTTTGGGAAGTATGTTAATTTCATGGTACATGAGTGGCTATCATACTGGCTATTATATGGGTTTCAGACAAAATCAAAAAGAAGGAAGGTGCTCACATTCCTTAAATTAAGGAGAAATGCTGGCATAGAGCAGCACTAAATGACACCACTAAAGAAACGATCAGACAGATCTGGAATGTGAAGCGTTATAGAAGATAACTGGCCTCATTTCTTCAAAATATCAAGTGTTGGGAAAGAAAAAAGGAAGTGGAATGGGTAACTCTTCTTGATTAAAAGTTATGTAATAACCAAATGCAATGTGAAATATTTTACTGGACTCTTTTGAAAAACCATCTGTAAAAGACTGGGGTGGGGGTGGGAGGCCAGCACGGTGGTGAGGCAGTTGAGAAAATTTGAATGTGGATTAGATTTTGAATGATATTGGATAATTATTGGTAATTTTATGGCCTGTGAGAAGGGTGTTGTAGTTTATAAAAGACTGTCTTAATTTGCATACTTAAGCATTTAGGAATGAAGTGTTAGAGTGTCTTAAAATGTTTCAAATGGTTTAACAAAATGTATGTGAGGCGTATGTGGCAAAATGTTACAGAATCTAACTGGTGGACATGGCTGTTCATTGTACTGTTTTTTTCTATCTTCTATATGTTTAAAAGTATATAATAAAAATATTTAATTTTTTTTTA
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4
En el paso 4 me indica que muestre por pantalla la secuencia de dicha proteína. Mi problema viene a la hora de que no sé cómo hacer para que el programa sólo empiece a procesarme los codones a partir del primer codón ATG, que no está al principio de la secuencia génica, sino algo después: es decir, necesito alguna función que me permita "desechar" todo lo que va antes del codón de inicio, y empezar a traducir a partir de ahí (y lo mismo para el primer codón de parada, pero desechando todo lo que venga después).
¿Alguien me podría iluminar sobre cómo hacer esto?
¡Muchísimas gracias!