L'objectiu d'aquest treball és trobar motius conservats en aquells introns on les tres senyals que dirigeixen l'splicing (donor, acceptor i branch sites) no estan conservades. Tots aquells introns que no presentin senyals consens, haurien de tenir altres senyals reguladores per dur a terme l'splicing correctament. Així doncs, diferenciarem dos grups d'introns: el grup 1 que inclou introns que conserven els splice-sites i el branch-site consens; i el grup 2, on almenys una de les tres senyals no està conservada. A més, per a cada grup, buscarem altres motius conservats de longitud concreta.
MATERIALS
Partim de diversos alineaments múltiples de 163 introns de quatres espècies diferents de llevat: Saccharomyces cerevisae, Saccharomyces bayanus, Saccharomyces mikatae i Saccharomyces paradoxus. Les seqüències es troben en aquest format:
Sc_YAL001C GTATGTTCATGTCTCATTCTTTTCGGCTCTTTATGATAAACGTACTATATTGTGAAAGATTATTTACTAACGACACATTGAAG
Sb_YAL001C GTATGTATACGCTTCATCCGCTCTAGCTTCTCACGAGAAGCATGCTGTGT-GCAAGAAAGCCTTTACTAACTATTTGTTAAAG
Sm_YAL001C GTATGTCTATGTCTCATTTTTTGCAGTCTCTCTTGAGGAATGTTCTATTTTGTAAGAGATCTTTTACTAACTACTTACCAAAG
Sp_YAL001C GTATGTATATGCCTCATTCTATTCCGTTCTTCATGAGAAACGTGATATATTGT--AAGATTATTTACTAACGACTTATTAAAG
****** * * **** * * * ** * * * * * * * * ********* * ***
Cada línia conté un identificador de l'espècie (Sc, Sb, Sm, Sp) i nom del gen i, a continuació, la seqüència corresponent. La cinquena línia d'asteriscs indica les posicions conservades en l'alineament. S'assumeix que aquests alineaments són òptims.
MÈTODES
S'han escrit dos programes: el programa1 permetrà classificar els introns en el grup consens o no consens segons si totes les senyals de splicing es troben o no conservades en les 4 espècies; i el programa2 buscarà, dins de cada grup, aquelles senyals conservades d'una longitud concreta (k) en les quatre espècies i que no són senyals consens d'splicing.
- Programa 1
- S'ha escrit el programa primer.pl en llenguatge Perl i s'ha executat sobre el fitxer d'alineaments múltiples (dataset.txt) amb la següent comanda:
- $ perl primer.pl dataset.txt 1 o bé
- $ perl primer.pl dataset.txt 2
- on 1 mostrarà els resultats pel grup consens i 2 pel grup no consens.
Si es volen guardar els resultats en un document, es pot utilitzar el redireccionament. Per exemple:
- $ perl primer.pl dataset.txt 1 > consens.txt o bé
- $ perl primer.pl dataset.txt 2 > noconsens.txt
En cas que la comanda no sigui correcta o no pugui obrir el document, es mostra un missatge d'error.
- El programa llegeix cada línia i construeix un hash %hash per cada intró i per cada espècie, on enregistra els nucleòtids de la seqüència corresponent. A més, també s'enregistra la fila d'asteriscs com a espècie 'star'. El hash tindrà un format com aquest, però amb tots els introns:
Intró |
Espècie |
Seqüència |
---|
YAL001C |
Sc | GTATGTTCATGTCTCATTCTCCTTTTCGGCTCCGTTTAGGTGATAAACGTACTATATTGTGAAAGATTATTTACTAACGACACATTGAAG |
Sb | GTATGTATACGCTTCATCCCC-GCTCTAGCTTCCCTCATTCGAGAAGCATGCTGTGT-GCAAGAAAGCCTTTACTAACTATTTGTTAAAG |
Sm | GTATGTCTATGTCTCATTTTT-TTTGCAGTCTTTCTCTCGTGAGGAATGTTCTATTTTGTAAGAGATCTTTTACTAACTACTTACCAAAG |
Sp | GTATGTATATGCCTCATTCTTCTATTCCGTTCTTTTCAGGTGAGAAACGTGATATATTGT--AAGATTATTTACTAACGACTTATTAAAG |
Star | ****** * * **** * * * ** * * * * * * * * ********* * *** |
YBL018C |
Sc | GTATGTATATTTTTGACTTTTTGAGTCTCAACTACCGAAGAGAAATAAACTACTAACGTACTTTAATATTTATAG |
Sb | GTACGTATATTTTTGA-TTTTCGAGCCCTAGCTAGCTAAAGAGAATAAGCTACTAACCTCCCCTTATATTTTCAG |
Sm | GTACGTATATTTTTGGTTTTTCGAGGCCCAGCCACCCAAGGAAAATAAGCTACTAACTTACCTTAATATTTACAG |
Sp | GTACGTATATTTTTGGTTTTTCGAGGCCCAGCCACCCAAGGAAAATAAGCTACTAACTTACCTTAATATTTACAG |
Star | *** ********** **** * * ** ***** ******** * * **** ** |
- Es recorre %hash per a establir les condicions que portaran les quatre seqüències de cada intró al grup 1 o al grup 2. Per això, es defineix la variable $linia, on es registra la seqüència de S. cerevisae de l'intró, i $star, on es troba la seqüència d'asteriscs del mateix intró.
Per un intró donat, aquelles posicions de $linia que coincideixin amb asterisc a $star, correspondran a posicions conservades en les quatre espècies.
Les senyals consens s'identifiquen mitjançant expressions regulars.
Branch-site:
- - Es recorre $linia per buscar un branch-site consens (TACTAAT) i s'emmagatzemen les subseqüències solapants de 7 nucleòtids en el vector @branch_sp.
- Es recorre $star en finestres de 7 caràcters i les subseqüències s'emmagatzemen en el vector @branch_star.
- Es compara cada subseqüència de @brancs_sp amb la corresponent en @branch_star, i en cas d'estar conservada, s'enregistra la posició anterior a l'inici del branch-site ($m) en el hash %branches. En el cas que no el trobem, l'intró passa directament al grup 2 i el programa busca el següent intró en el hash.
Donor-site
- - Es recorren els nucleòtids de $linia per a buscar el donor-site consens (GTATGT) i conservat (mirant $star). En cas que no trobem donor-site, l'intró passa al grup 2 i el programa analitza el següent intró del hash.
Acceptor-site
- - Si existeix el donor-site (i, per tant, també el branch-site), es recorren els nucleòtids de les quatre espècies ($actual) per a buscar l'acceptor-site consens (C/T AG) i conservat ($star). Si troba aquesta senyal de splicing, $interruptor = 1, i l'intró s'inclourà en el grup 1; en cas contrari, $interruptor es mantindrà a 0 i l'intró es classificarà en el grup 2. La cerca s'ha hagut de fer en les quatre espècies i $star per a evitar errors. Per exemple, si el donor-site per un intró fos:
si només comparem $linia i $star, l'intró aniria al grup 2, tot i que
segons el nostre criteri pertany al grup 1.
- El programa mostra els resultats obtinguts pel grup escollit ( consens o no consens ).
- Programa 2
- S'ha escrit el programa ( segon.pl ) en llenguatge Perl i s'ha executat sobre el fitxer que conté els introns (consens o no consens). A més cal especificar la longitut dels motius que es busquen amb la següent comanda:
Si es volen guardar els resultats en un document, es pot utilitzar el redireccionament. Per exemple:
- $ perl segon.pl consens.txt 4 > consens4.txt
En cas que la comanda no sigui correcta o no pugui obrir el document, mostra un missatge d'error.
- Es recorren les línies del fitxer i, per cada intró ($intro), s'enregistra el branch-site (si en té) a $branch.
- Es recorre la seqüència de 'Sc' evitant el branch (si n'hi ha), els 6 nucleòtids del donor-site i els 3 de l'acceptor site; i i s'emmagatzemen les subseqüències solapants de k nucleòtids en el vector @subSc.
- Es recorre la seqüència de 'star' evitant el branch (si n'hi ha), els 6 nucleòtids del donor-site i els 3 de l'acceptor site; i s'emmagatzemen les subseqüències solapants de k nucleòtids en el vector @substar.
- Es compara cada subseqüència de 'Sc' amb la corresponent de 'star' i, en cas d'estar conservada, la guarda en el hash %comptar.
Així aconseguim un hash que compta les subseqüències conservades de k nucleòtids.
- Es mostren els motius, guardats en el hash, ordenats numèricament.