Discovering Gavialis gangeticus selenoproteins

Predicción de
genes

Predicción del
SECIS

Automatización

 

Materiales y Métodos

Uno de los objetivos de este trabajo es identificar computacionalmente todas las selenoproteínas presentes en el genoma del cocodrilo Gavialis gangeticus. Para conseguir esto, usamos una técnica basada en la homología. Se han usado como queries secuencias conocidas de selenoproteínas y se han buscado regiones del genoma de gavial en las que hay homólogos de estas.

Obtención del genoma de Gavialis gangeticus

El genoma fue facilitado por la Universidad y se encuentra disponible en el siguiente directorio:

/cursos/BI/genomes/2015/Gavialis_gangeticus

Obtención de queries

Como se ha comentado en la introducción, hemos usado como genoma de referencia el de la especie G. gallus. En SelenoDB es posible encontrar todas las selenoproteínas para las que hay notación, junto con la secuencia del gen, el promotor, el transcrito, la secuencia de proteína, etc. Hemos usado las secuencias de proteínas de distintas selenoproteínas para encontrar homología en nuestro genoma. En caso de no poder encontrar alguna de las selenoproteínas en el genoma de G.gallus recurrimos al genoma humano porque es el que está mejor caracterizado.

Búsqueda de regiones del genoma contenedoras de selenoproteínas: BLAST

BLAST ( (Basic Local Alignment Search Tool) es un algoritmo heurístico que compara la secuencia de interés con otra secuencia conocida para encontrar regiones parecidas, y calcula la significación estadística de estos alineamientos. Dependiendo del tipo de BLAST se compararán aminoácidos o nucleótidos.

En nuestro proyecto usamos tblastn que compara y alinea secuencias de aminoácidos y de nucleótidos. Específicamente hemos comparado secuencias de proteínas de selenoproteínas conocidas con secuencias nucleotídicas del genoma de Gavialis gangeticus.

Para cada alineamiento obtenemos varios parámetros:

Scaffold: localización del alineamiento en el genoma de gavial

Identity: cuan parecidas son las secuencias alineadas, representado por una puntuación

Start and End position: inicio y fin del hit obtenido

E-value: describe el número de veces que podemos esperar nuestro alineamiento en la base de datos por azar

El comando usado es el siguiente:

$blastall –p tblastn –i query.fa –d databaseBLAST –o outputfile

-p: especifica el tipo de blast que queremos usar

-i: especifica el input. En este caso la secuencia de selenoproteína conocida que usamos como referenciapara buscar en el genoma de gavial

-d: especifica la base de datos en la que buscamos. En nuestro trabajo se trata del genoma de G. gangeticus

-o: especifica el fichero en que guararemos el resultado

En este proyecto utilizamos como límite aceptado de significancia estadística un E-value menor a 0,0001.

Secuencia de interés: FASTAINDEX, FASTAFETCH, FASTASUBSEQ

Para extraer la secuencia encontrada en la región genómica hemos usado varios programas.

  • Indexar el genoma
  • Nos centramos en el scaffold con el mejor alineamiento que nos da BLAST. Para ello debemos ejecutar fastaindex separando los segmentos genómicos de gavial e indexándolos.

    $ fastaindex genome.fa genome.index

    - Primer argumento: geome.fa, es el input

    - Segundo argumento: genome.index, es el output

  • Obtención del scaffold completo
  • Para extraer la secuencia de nucleótidos del genoma indexado hay que usar fastafetch:

    $ fastafetch genome.fa genome.index nom_scaffold > nomscaffold.fa

    - Primer argumento: input (genoma de interés)

    - Segundo argumento: genoma indexado

    - Tercer argumento: nombre del scaffold con el mejor alineamiento

    Entonces creamos un documento que contiene la secuencia nucleotídica de el scaffold con el mejor alineamiento.

  • Obtención de la secuencia de interés desde el scaffold
  • Hay que tener en cuenta que el alineamiento realizado por BLAST solo considera regiones codificantes del genoma de interés. Aun así, el gen también contiene intrones y habrá que coger un rango más amplio de nucleótidos.

    $ fastasubseq nomscaffold.fa posicio_inicial llargada > subsequencia.fa

    - Primer argumento: input (documento que contiene la secuencia completa del scaffold)

    - Segundo argumento: posición de inicio en la secuencia de scaffold

    - Tercer argumento: longitud de la secuencia que queremos extraer




Predicción del gen: EXONERATE

Una vez obtenida la secuencia de interés desde el scaffold podemos usar exonerate para predecir los elementos funcionales de la secuencia nucleotídica. Para hacerlo, exonerate alinea la query (secuencia proteica extraída de SelenoDB) con la secuencia procedente de el scafford del genoma de gavial.

$ exonerate –m p2g --showtargetgff –exhaustive yes –q query.fa –t subsequencia.fa | egrep –w

exon > exons.exonerate.gff

-m: mode. En este caso usamos relación de genoma con proteína, donde se compara una secuencia de aminoácidos con un genoma de interés.

-showtargetgff: los resultados se mostraran en formato GFF

-exhaustive: para extender las posiciones de la secuencia genómica

-q: secuencia query (proteína de SelenoDB) en formato fasta

-t: target (secuencia nucleotídica del scaffold)

Al añadir | egrep -W exon > exons.exonerate.gff creamos un documento con los exones del gen predicho.

Obtención de la secuencia codificante de el gen en nucleótidos:

Aquí, queremos obtener la secuencia nucleotídica de la proteína predicha a partir de los ficheros GFF de coordenadas y la secuencia scaffold completa.

Para hacerlo ejecutamos el programa fastaseqfromGFF:

$ fastaseqfromGFF.pl subsequencia.fa exons.exonerate.gff > exons.fa

- Primer argumento: documento fasta de la secuencia scaffold

- Segundo argumento: archivo GFF con las coordenadas de los exones del gen predicho

Traducción de la secuencia nucleotídica del gen problema a proteína

Entonces, necesitamos traducir la secuencia predicha de nucleótidos a secuencia de aminoácidos (secuencia proteica).

El programa usado para ello es Fastatranslate:

$ fastatranslate –f exons.fa –F 1 > proteína_predita.fa

-f: especifica el documento que contiene la secuencia de nucleótidos

-F: especifica el patrón de lectura de la traducción

Comparación de dos secuencias proteicas: T-COFFEE

Finalmente, la senenoproteína predicha en este proceso y la selenoproteína conocida (query) se comparan.

Usando el programa T-coffee conseguimos un alineamiento entre las dos proteínas en el que observamos los aminoácidos conservados y los no conservados.

Predicción de SECIS

Un elemento SECIS, tal y como ya hemos comentado anteriormente, es un motivo estructural de RNA que se localiza en 3'-UTR del gen de la selenoproteína de eucariotas.

Para llevar a cabo una mejor caracterización de las selenoproteínas predichas, determinaremos de novo sus elementos SECIS mediante SECISearch3, cosa que nos permite obtener las secuencias de DNA que corresponden a estos elementos.

Automatización

Hemos realizado un script de bash que se encarga de importar los paquetes necesarios, crear las carpetas que usará el programa, correr los programas de anotación y llamar los filtros (script disponible aquí).

A su vez, el script de bash usa una serie de filtros y apareadores de archivos escritos en lenguaje de programació Phyton (script disponible aquí).

Descarga el paquete completo aquí.