EL  PROGRAMA  LookUpstream




INTRODUCCIÓ

El mètode de les matrius de pesos (PWM, Position Weight Matrix) és una aproximació que permet determinar aquells candidats amb la funció a estudiar dins d'una seqüència de DNA.

Les matrius de pesos es construeixen prèviament al seu ús, a partir de seqüències ja caracteritzades que seran utilitzades com a patró per comparar-hi les seqüències problema.

Inicialment, es construeix una matriu de freqüències absolutes, en les que s'indica el nombre de vegades que apareix un nucleòtid determinat (A, C, T o G) en una posició concreta d'un site funcional real. Posteriorment, cada element de la matriu es divideix pel nombre total de seqüències utilitzades per construir-la, obtenint així la matriu de freqüències relatives, que indica la probabilitat que té cada nucleòtid d'aparèixer en una posició concreta. El pas següent és el càlcul del logaritme de la raó de versemblança (log-likelihood ratio) de cada nucleòtid, definida com el quocient entre la probabilitat abans calculada i la probabilitat de cada nucleòtid assumint que tots apareixen amb la mateixa freqüència (p = 0.25). Així, obtenim la matriu de pesos. Per últim, es determina l'score de cada nucleòtid de les seqüències problema sumant la raó de versemblança per a cadascun, indicada en la matriu de pesos.

És obvi que obtindrem alguns candidats amb scores baixos. Són els formats per bases en les que la probabilitat de trobar-se en la posició concreta d'un site funcional és menor que 0.25. És per aquest motiu que es fa important determinar un valor llindar o threshold per augmentar l'astringència dels resultats.



OBJECTIU

El programa LookUpstream ha estat creat amb l'objectiu de predir possibles regions promotores al llarg d'una seqüència de DNA, mitjançant el mètode de les matrius de pesos.



MATERIAL

Matrius de pesos: TATA box i GC box (TRANSFAC)    Matrius de pesos

Seqüències problema en format FASTA    Seqüències

Sistema operatiu: LINUX (UNIX)

Llenguatge de programació: Perl



EL PROGRAMA

El patró necessari per l'execució de LookUpstream és :

-opcions fitxer_seqDNA fitxer_matriu>

fitxer_seqDNA conté una o més seqüències de DNA
fitxer_matriu conté una o més matrius de pesos

El programa està dividit en tres apartats principals, definits a continuació.


1. Inicialització del programa:

Declarar les opcions del programa. A més, cal declarar totes les variables necessàries.


2. Processat de les seqüències:

Cal destacar que el programa ha estat dissenyat perquè executi totes les seves funcions per a una sola seqüencia cada vegada. Així, aquest apartat es repetirà fins que s'hagin analitzat totes les seqüències del fitxer.

    - Obertura de fitxer_seqDNA
    - Eliminació del símbol ">" de les seqüències en format FASTA
    - Processat de la seqüència per al seu anàlisi


2.1) Processat de les matrius:

Aquest apartat es repeteix, per cada seqüència, tantes vegades com matrius tingui el fitxer.

a) Obertura de fitxer_matriu
b) Eliminació del símbol "#" que precedeix el nom de cada matriu
c) Normalització de la matriu, a partir del logaritme del quocient entre la freqüència relativa de cada nucleòtid (freqüència absoluta/total de seqüències de la matriu de pesos) i la frequència establerta assumint que tots els nucleòtids apareixen equiprobablement (0.25).
El resultat d'aquesta operació correspon a la raó de versemblança de cada nucleòtid en les diferents posicions de la seqüència.


2.2) Avaluació dels candidats:

Cada candidat té una longitud especificada pel nombre de files de la matriu de pesos.
El programa només mostrarà aquells que assoleixin el llindar o threshold definit per l'usuari o l'assignat per defecte.

a) Càlcul de l'score dels candidats, a partir de la suma de la raó de versemblança de cada nucleòtid
b) Si l'score és prou elevat, en finalitzar l'execució LookUpstream mostrarà la posició incial, final score i seqüència de cada candidat.
c) Es tanca el fitxer si ja no conté més matrius. Si no és així, s'inicia novament el punt b) de l'apartat 2.1
d) Es tanca el fitxer_seqDNA si ja no conté més seqüències. Si no es així, es torna al punt b) de l'apartat 2.


3. Representació gràfica i final del programa:

Al llarg del programa s'han anat emmagatzemant totes les seqüències, els candidats (amb les seves respectives posicions inicials i finals) i l'identificador de cada matriu, per obtenir una representació gràfica dels resultats. Aquesta permet visualitzar fàcilment la localització exacta dels candidats dins les seqüències.

Finalment, es procedeix a tancar el programa.



Opcions del programa:

-v: informació relativa a l'execució del programa, especificant-ne cada pas per pantalla mitjançant la subrutina "sub print_mess".
-m: informació sobre la matriu. Per pantalla, LookUpstream mostra les matrius normalitzades, el nombre de seqüències utilitzades per construïr-les i la seva longitud en nucleòtids i, finalment, la seqüència consens.
-s: informació de la seqüència. El programa imprimeix el nom, el nombre de nucleòtids i el contingut en C+G (en %).
-t x.x: determinació del threshold. Si no s'utilitza, el programa n'assigna un per defecte (-3).




Resultats amb LookUpstream

LookUpstream disponible



Pàgina principal   Inici