Anotació de genomes

La realització d’aquest treball s’ha portat a terme amb el sistema operatiu Unix, tant per a la realització de la cerca de proteïnes, com per a la pàgina web i per al procés d’automatització. També s’ha fet servir el sistema operatiu Windows per a treballar amb el programa putty dins del cluster.

A partir de les bases de dades de SelenoDB 1.0 i 2.0 s’han extret les seqüències de les selenoproteïnes que s'utilitzaran per a predir selenoproteïnes i homòlegs en el genoma de Elephantulus edwardii. S’ha escollit Mus musculus com a genoma a comparar, doncs és un dels genomes millor caracteritzats i més proper a l’espècie a estudiar. Paral·lelament, també s’ha fet una cerca en la base de dades NCBI per a les proteïnes més conflictives. A més també s'ha analitzat la maquinària de les selenoproteïnes, la seqüència de les quals s'ha extret de Homo sapiens, ja que a SelenoDB 2.0 estavan mal anotades.

A més s’han predit els elements SECIS (selenocysteine insertion sequence) en cada possible selenoproteïna predita, així com també s'ha identificat la presència del tRNA específic per a la traducció de la selenoproteïna en el genoma de l’animal estudiat.


Més endevant es comenta cada punt junt amb les comandes que s’han fet servir. Però, primerament, abans de fer anar cap comanda s’ha de exportar cada un programa amb les següents comandes per tal que estiguin disponibles a l'hora de treballar. Les comandes a entrar en el terminal són:

Comanda Programa
$ export PATH=/cursos/BI/bin/ncbiblast/bin:$PATH NCBI Blast
$ cp /cursos/BI/bin/ncbiblast/.ncbirc ~/ NCBI Blast
$ export PATH=/cursos/BI/soft/exonerate/i386/bin:$PATH Exonerate
$ export PATH=/cursos/BI/bin:$PATH GeneWise, FastaseqfromGFF.pl, tcoffee
$ export WISECONFIGDIR=/cursos/BI/soft/wise-2.2.0/wise GeneWise

- Fastaindex

Primer de tot, cal fer la comanda fastaindex per indexar el genoma en scaffolds i poder extreure la regió d’interès desprès de fer el Blast. Aquest programa genera un document (“genome.index”) on hi ha els identificadors de cada scaffold, que després s’emprarà en un altre programa. La comanda és la següent:

$ fastaindex /cursos/BI/genomes/project_2014/Elephantulus_edwardii/genome.fa genome.index

- Blast

BLAST (Basic Local Alignment Search Tool) cerca regions de semblança entre seqüències biològiques. Aquesta cerca es pot fer entre dues seqüències de nucleòtids, o bé de proteïnes, etc. Per fer això: es compara la seqüència de la proteïna de Mus musculus (“proteina.fa”) amb el genoma de l’animal que s’estudia (/cursos/BI/genomes/project_2014/Elephantulus_edwardii/genome.fa). Com que s’està comparant aminoàcids amb nucleòtids s’empra tBLASTn. Per fer anar el BLAST s’utilitza la següent comanda:

$ blastall -p tblastn -i proteïna.fa -d /cursos/BI/genomes/project_2014/Elephantulus_edwardii/genome.fa -o proteïna.blast

El fitxer generat al final s’anomena “proteina.blast” i correspon a una sèrie d’alineaments i el corresponent anàlisi estadístic. En cada proteïna hi haurà diferents alineaments, que es troben a diferents scaffolds i en diferent significança estadística.

Elecció dels millors alineaments

Els criteris seguits per escollir els millors alineaments de cada proteïna van ser uniformes, tot i que hi ha algunes excepcions com es comenta a la discussiò de cada proteïna. En general, al document del blast hi ha més d’un alineament amb un e-value i un score òptim. Els criteris generals són:

  • Elecció dels alineaments amb un major score.
  • Elecció dels alineaments amb un menor e-value.
  • Descartar els alineaments amb un e-value per sobre de 0,0001.

Més endavant, es miren els documents resultants del t-coffee per cada alineament i s’escull aquell alineament que resulti en un major score. A més a més si els documents del t-coffee no comencen per Metionina es passa al següent alineament.

- Fastafetch

Amb el fitxer obtingut amb el BLAST es seleccionen els alineaments convenients segons els criteris anteriors. Per a cada alineament òptim s’ha d’agafar l’identificador i extreure la regió del gen. Això ajuda a manipular millor les dades i obtenir una seqüència més curta per poder treballar amb més facilitat.

Per extreure el scaffold d’interès s’ha de fer anar fastafetch. Fem servir la següent comanda per extreure el scaffold que ens interessa, és a dir, la regió on està alineada la proteïna query en el genoma d'Elephantulus edwardii.

$ fastafetch /cursos/BI/genomes/project_2014/Elephantulus_edwardii/genome.fa genome.index "identificador gi" > proteina.genome.fa

on..

  • identificador gi és la seqüència inicial que hi ha a cada alineament i que és únic per a cada scaffold. S’ha de copiar l'inici de cada identificador fins l’últim pipe.
  • A “proteina.genome.fa” tenim el scaffold que s’ha indexat al “genome.index” amb la seqüència completa extreta de “genome.fa” (el genoma complet de Elephantulus edwardii). Per tant, en aquest document estarà tota la seqüència del scaffold elegit, però continua havent un excés d’informació que s’elimina amb la següent comanda.

- Fastasubseq

El següent pas és extreure la seqüèencia que alinea amb el nostre genoma en el millor alineament. Per fer això s’empra la comanda fastasubseq que extreu des de el punt inicial fins una longitud determinada. Per saber quina posició cal extreure es mira l’alineament i al valor més baix es resten 50.000 i al més alt es suma 50.000. Amb aquests dos valors s’anota la diferència per conèixer la longitud del fragment que s’extraurà. Pel que fa al valor d’inici es farà servir el menor valor amb la resta, és a dir, start-50.000.

$ fastasubseq proteina.genome.fa start length > proteinagen.fa

El document “proteinagen.fa” correspon a una seqüèencia de més del 100.000 parells de bases on hi haurà el gen d’interès.

- Exonerate

Exonerate és una eina general per a la comparació de seqüències. Està dissenyat per ser alhora general i ràpid. Es poden produir alineacions amb gaps o sense gaps. Permet l'alineació de seqüències utilitzant una aplicació de programació dinàmica. Generalment, la cadena forward s'indica amb "+", la cadena reverse per '-', i una cadena desconeguda o no-aplicable (com en el cas d'una seqüència de proteïna) s'indica per '.'Per tant, el següent pas seria fer exonerate per generar una anotació d'un gen que dona lloc a la proteïna mitjançant la següent comanda:

$ exonerate -m p2g --showtargetgff -q proteina.fa -t proteinagen.fa| egrep -w exon > proteinaexo.exonerate.gff

- FastaseqfromGFF

Al fitxer obtingut amb l’exonerate hi ha la seqüència de cDNA. S’ha d’extreure amb el programa fastaseqfromGFF, que és un programa en Perl que dóna un fitxer llest per ser traduït a proteïna. Per executar el programa fem servir la comanda:

$ fastaseqfromGFF.pl proteinagen.fa proteinaexo.exonerate.gff > proteinapl.fa

- Fastatranslate

Amb la seqüència de cDNA que ens interessa en un fitxer (“proteina.pl”) podrem fer un fastatranslate per traduir la seqüència de cDNA a proteïna en totes les pautes de lectura possibles (“proteinatr.fa”). Per executar aquest programa es fa servir la comanda:

$ fastatranslate proteinapl.fa > proteinatr.fa

Al document hi haurà totes les sis possibles pautes de lectura que s'han de separar en diferents documents per el següent pas.

- T-coffee

L'últim pas de l‘anàlisi de les seqüències és el T_coffee (Tree based Consistency Objective Function For AlignmEnt Evaluation). Aquest programa permet alinear seqüències. En aquest cas s’alinea la seqüència query original (“proteina.fa”) i la que s'acaba de predir en el pas anterior (“proteinatr.fa”). En el cas de la proteïna predita al fastatranslate veiem que hi ha sis possibles traduccions. S’han de comparar cada una d’elles amb la proteïna original. En aquest cas s’obtenen sis arxius, que s’anomenen “proteina.coffee1.fa”, on el nombre expressa el número de proteïna traduïda segons l’ordre d’aparició al document “proteinatr.fa”. Per fer aquest alineament es fa servir la següent comanda:

$ t_coffee proteinatr.fa proteina.fa > proteina.coffee1.fa

- GeneWise

Una altra opció que es pot emprar és en compte de fer anar les comandes exonerate, fastaseqfromGFF i fastatranslate, es poden estalviar aquests passos mitjançant el GeneWise. GeneWise soluciona el problema d’agafar una sola la proteïna i compara directament amb l'ADN genòmic, te en compte les propietats estadístiques conegudes de les estructures de gens i la presència d’un possible error en la seqüenciació. En aquest cas s’han de donar uns altres permisos, que ja s’han detallat a el inici. Per fer anar aquest programa s’utilitza la comanda:

$ genewise -pep -pretty -cdna -gff proteina.fa proteinagen.fa > proteïnawise.fa

Però cal tindre en compte que aquest programa no donarà cap resultat si la proteïna s'alinea en la seqüència complementària del genoma de l’animal. Per evitar-ho es mira al blast si el frame surt negatiu per tal de donar l'opció -trev, que farà el GeneWise amb la seqüència complementària:

$ genewise -trev -pep -pretty -cdna -gff proteina.fa proteinagen.fa > proteïnawise.fa


Blastp

Una vegada fet el t_coffee, s’ha de comprovar si la proteïna te homòlegs en altres espècies mitjançant una cerca BLASTP. Aquesta cerca es fa contra el conjunt no redundant de totes les proteïnes disponibles a NCBI, que inclou varies espècies. S’empren les següents comandes:

$ export PATH=/cursos/BI/bin/ncbiblast/bin:$PATH

$ blastall -p blastp -i proteinatr.fa -d /cursos/BI/db/blast/nr.fa

Amb això obtenim un document del tipus blast on hi ha diferents alineaments en prote%iuml;nes d’altres espècies anotades amb els corresponents valors estadístics. Ens dóna una idea de com conservada està aquella proteïna que analitzem, i si realment la predicció és fiable, ja que es trobarà o no en altres espècies. Aquest programa es pot fer anar tant des del terminal (o shell), com des de la plana web oficial clicant aquí .


SECIS

En les selenoproteïnes predites es farà una predicció d'elements SECIS per a donar més pes a la nostra predicció, doncs una selenoproteïna necessita l'element SECI per tal de ser traduiïda. Per tal d'assolir aquest objectiu, es realitza una cerca en la web seblastian.crg.es . En l'esmentada plana web adjuntarem el fitxer resultat de la comanda fastasubseq per tal d'obtenir la predicció dels elements SECIs.


tRNA Scan

Aquest programa cerca al genoma de l’organisme estudiat tots els possibles tRNAs. En especial es fa servir per cercar si hi ha un tRNA de SEC, ja que si no està no serà possible dir que l’organisme té selenoproteïnes, ja que no les podrà traduir. Per fer servir el programa s’han d’instal·lar una sèrie de paquets seguint les instruccions de la pàgina web del següent link . El programa fa servir per defecte l’opció per les seqüències d’eucariotes. La comanda crea dos fitxers on hi han els resultats i l’estructura dels diferents tRNAs. Per executar-lo es fan servir les següents comandes des del directori:

$ tRNAscan-SE /cursos/BI/genomes/project_2014/Elephantulus_edwardii/genome.fa -o result.txt -f structure.txt


Procés d'automatització

Per tal de poder agilitzar tot el procés d'obtenció de dades s'han creat alguns programes que permeten assolir el mateix objectiu més fàcilment.

Prèviament a l'execució del programa s'han hagut de crear el document genome.index (ja explicat) i un directori amb el nom “proteines” on s'hi guarden les seqüències de les proteïnes a analitzar en diferents documents amb el nom de la proteïna en qüestió. En el mateix directori on hi ha la carpeta “proteines” i el document genome.index és on s'han de guardar i executar els programes.

- Descripció dels programes

El programa autoexon.pl permet, a partir dels documents amb les seqüències de les proteïnes, dur a terme el tblastn, seleccionar l'alineament amb un millor score i que a partir d'aquest executi el fastafetch, fastasubseq, l'exonerate, el fastaseqfromgff, el fastatranslate i el t_coffee de manera completament automàtica. A més el programa guarda els documents obtinguts a cada pas en diferents directoris que també crea de forma autònoma:

Directoris que el programa crea:

  • blasts → s'hi troben els documents amb els resultats obtinguts al fer el tblastn de cada proteïna.
  • scaffolds → hi ha els scaffolds extrets amb el fastafetch.
  • fastasubseq → s'hi troben els documents amb el que s'ha obtingut realitzant el fastasubseq.
  • exonerate → s'hi troben els documents amb el resultat de l'exonerate.
  • exoncount → s'hi troben els documents on s'han comptat els exons resultants dels arxius del directori exonerate.
  • cDNA → s'hi troben els documents amb els resultats obtinguts d'executar el fastaseqfromgff.
  • Translate → S'hi troben els documents resultants d'executar el fastatranslate.
  • t-coffee → dins d'aquest directori hi trobarem tot un seguits de directoris per a cadascuna de les proteïnes analitzades a dins dels quals hi trobem un document per cada t-coffee realitzat per a cada possible marc de lectura obtinguts del fastatranslate, sis per a cada proteína.

Per tal de poder separar les seqüències produïdes pel fastatranslate que es troben en sentit contrari s'ha de realitzar un pas intermedi executant el fastarevcomp, que inverteix la seqüència. Després s'ha de realitzar el fastatranslate un altre cop amb aquesta inversió i redirigir els documents resultants al directori translate.

Així doncs, a la carpeta t-coffee obtenim els documents resultants d'executar el programa. Per tal de poder diferenciar els t-coffee amb un major score i realitzar el blastp d'aquests s'ha creat aquest altre programa : bestscore.pl

Inconvenients del programa: Aquest programa no és perfecte i consta d'una sèrie de defectes.

L'automatització agafa per defecte l'alineament amb un score més alt després de fer el blast. Si dues proteïnes són de la mateixa família, les seqüències seran força similars i, per tant, pot ser que ambdues seqüències siguin identificades amb la mateixa seqüència solapant-se, quan en realitat no és així. és per això que amb les proteïnes conflictives (identificades mitjançant el programa autoblast.pl) el procés d'anàlisi s'ha realitzat de manera diferent.

El programa autoblast.pl permet obtenir el blast complet de cadascuna de les proteïnes de dins el directori proteïnes. Si les proteïnes només consten d'un alineament bo el programa autoexon complira la seva funció.

En cas que existeixin diferents alineaments bons s'haurà d'aplicar el programa per cadascun dels alineaments. Això es farà copiant el directori on hi ha tots els programes i carpetes i tornant a executar l'autoblast esborrant, prèviament, les línies del blast simplificat obtingut amb el primer autoexon que corresponguin al primer identificador. Així el programa identificara el següent alineament com el millor ja que el primers l'haurem esborrat. Això permetrà comparar diferents proteïnes de la mateixa família.

El programa bestscore.pl permet obtenir el t-coffee amb un major score i a partir de la seqüència que li correspon del directori fastatranslate executar el blastp.

El programa genwise.pl permet realitzar el genwise de les diferents prote&ïuml;nes que tenim. Per a executar aquest programa s'hauran de fer els exports path corresponents.


Torna a dalt .

Enllaços d'interès

Universitat Pompeu Fabra

SelenoDB

NCBI

NCBI

NCBI


Qui som?

Contacta amb nosaltres