Prácticas del Tema 6. Genómica

Biología Molecular de Sistemas. Cuarto curso Grado de Bioquímica

 

1. Práctica de Control de calidad de la secuenciación con FastQC

Objetivo de la práctica

Realizaremos un análisis de la calidad de la secuenciación mediante el programa FastQC de las secuencias correspondientes a lecturas RNA-Seq provenientes de un secuenciador Illumina y otras secuencias provenientes de un secuenciador SOLiD:

  1. Cada vez que obtengamos archivos con lecturas procedentes de una secuenciación masiva, lo primero que debemos hacer es valorar la calidad de las secuencias obtenidas mediante la plataforma Illumina con programas como FastQC
  2. Valoraremos la calidad de las secuencias y en particular si necesitamos hacer algún filtrado (trimming) de dichas secuencias ya sea por criterios de calidad, de longitud o por las dos cosas. Entre otras cosas adicionales, hay que valorar la presencia o no de secuencias de los cebadores o adaptadores en las lecturas.
  3. El filtrado de calidad es más o menos exigente dependiendo de las pretensiones. No es lo mismo tratar de averiguar si hay mutaciones en un cáncer, donde se requiere secuenciación de alta calidad, que secuencias que van a ser usadas para el ensamblado de un genoma
  4. De ser necesario, realizaremos el filtrado de las lecturas teniendo en cuenta varias consideraciones de calidad con los scripts y programas incluidos en la suite FastX-Toolkit. Hay otros programas para este propósito.
  5. Tras cada uno de los trimmings o recortes de secuencias que realicemos, valoraremos los cambios que han tenido lugar. Hay que tener en cuenta aspectos como si nos hemos desprendido de demasiados datos, si ha mejorado la calidad, si el filtrado no ha sido suficiente, etc.
  6. Para adquirir práctica real, tendréis que estudiar y analizar todos los programas incluidos en la suite FastX-Toolkit para escoger el programa adecuado para hacer el trimming.
  7. Deberéis explicar en vuestra página WEB el proceso y cuál es la posible utilidad del resto de los programas incluidos en FastX-Toolkit, por lo que tendréis que investigar. Si algo es confuso, lo discutimos en clase
  8. Cuando hayamos acabado con las secuencias provenientes del equipo Illumina, haremos lo mismo con las lecturas provenientes de un secuenciador SOLiD. Repetiremos el mismo proceso que con las lecturas de Illumina, pero tendremos que aplicar criterios diferentes que os resultarán obvios. Debéis analizar y comentar lo que obteneis.
  9. (opcional). Podeis aprender a descargar las lecturas desde la base de datos SRA del NCBI

Preparativos:

  1. Comprobar y/o instalar en su caso JAVA en el ordenador. Acceder a este documento para comprobar y/o instalar Java
  2. Tienes que instalar la versión llamada JDK de Java. Busca con Google como instalar el Java JDK en tu sistema operativo. Por ejemplo
  3. Buscar la página del programa FastQC con Google
  4. Debéis encontrar el modo de instalar el programa FastQC, que realizará el análisis de la calidad de las secuencias tanto en Windows, como en Linux o el Macintosh.
  5. Instalar la suite de utilidades FastX-Toolkit. Busca información en Google sobre este programa y tratar de instalarlo o usarlo en tu cuenta de la UCO o en tu propio ordenador. En particular, mira como en la página de Downloads hay ya binarios ejecutables precompilados para varios sistemas operativos. Los que tengais Macintosh, buscar el archivo adecuado.
  6. Por otro lado, revisa y lee el apartado Command-line usage que viene en la página WEB de FastX-Toolkit porque habéis de aprender a reconocer para qué sirve cada una de las aplicaciones y como usarlas.

 

Ejecución de la Práctica 1

Análisis de la calidad de la secuenciación de un archivo de secuencias fastq obtenido con la plataforma Illumina.

  1. Si estás físicamente en una sala de la UCO, pasa al punto 3
  2. Si no estás físicamente en la UCO, conecta con la UCO bien con Putty (usando una terminal con comandos, recomendado, búscalo con Google. Usa una conexión SSH estándar con el puerto 22 dirigido a ts.uco.es). Se recomienda usar el entorno de terminales porque es lo que tendrías que usar si accedes a superordenadores, que es lo que se necesita ahora mismo para poder hacer genómica. Estos superordenadores carecen de entornos gráficos que se usan con el ratón.
  3. Si tienes ordenador propio con Linux instalado o Macintosh, puedes descargar el archivo Sec.Illumina.fastq desde ESTE ENLACE. Si no te funciona el enlace anterior, usa este ENLACE DE MEGA
  4. Si estás usando un ordenador de la UCO atención: Podrías tener limitaciones de espacio en tu cuenta de la UCO y no deberias malgastar espacio copiando el archivo en tu cuenta. Este archivo se encuentra ya disponible y de forma permanente en los ordenadores de la UCO en la dirección /usr/local/uco/bms/practica1. Aprende a usar este archivo remoto localmente.
    • Es importante poner el "/" antes del usr porque hablamos de un directorio o carpeta llamado usr que no tienes en tu propia cuenta. La carpeta usr es una carpeta general de usuario que existe en Linux, como existe "Mis Videos" o "Mis canciones" en Windows. Al usar la barra "/" antes del usr, le estamos pidiendo a Linux que busque una carpeta con ese nombre en todo su contenido, no solo en tu cuenta
    • Puedes ver el contenido de esa carpeta con la orden ls -l /usr/local/uco/bms/practica1
    • Observarás que hay varios archivos, todos terminados con el prefijo gz. Eso significa que son archivos comprimidos. Si ejecutas file Sec_Illumina.fastq.gz verás que se te informa que es un arhcivo gzip compressed data
    • Puedes ver el contenido de ese archivo si ejecutas zcat /usr/local/uco/bms/practica1/Sec_Illumina.fsatq.gz. Te aparecerá la pantalla el contenido corriendo tanto, que no podras ver nada. Así que tienes varias opciones
      • Si ejecutas zcat /usr/local/uco/bms/practica1/Sec_Illumina.fsatq.gz | head verás la cabecera del archivo, es decir, su inicio. El símbolo | se obtiene dandole a la vez a la tecla AltGr (a la derecha de la tecla de espacio) + el número 1. zcat es una orden equivalente a cat que te da el contenido de archivos de texto. cat se usa para archivos no comprimidos, y zcat cuando el archivo está comprimido.
      • Si ejecutas zcat /usr/local/uco/bms/practica1/Sec_Illumina.fsatq.gz | more verás el contenido pantalla a pantalla. Busca en Google como usar more en Linux
    • Puedes optar por hacer las cosas más fáciles si haces lo siguiente. Te evitarás tener que teclear tanto
      • Crea una variable con este codigo ruta=/usr/local/uco/bms/practica1 (respeta los espacios. Escríbelo tal y como lo ves aqui
      • Si le das a echo $ruta verás que te da el contenido de la ruta que se ha almacenado en la variable ruta
      • Por tanto si le das a ls -l $ruta te dará el contenido de archivos de la carpeta incluida en la variable ruta
      • Y si le das a zcat $ruta/Sec_Illumina.fastq.gz | more te dará el contenido de ese archivo sin haber necesitado escribir tanto. Recuerda que el contenido de la variable ruta se guarda en la ventana de terminal que estás usando. SI abres una ventana nueva, es como abrir un ordenador nuevo. Esa variable no estará almacenada en ese nuevo terminal y tendrás que definirla de nuevo
    • Vamos a hacer un pre-análisis de ese archivo
      • zcat $ruta/Sec_Illumina.fastq.gz | head te dará la cabecera del archivo. Observarás que te da 10 líneas
      • Si miras este Wiki o los apuntes de clases, conocerás que en los archivos fastq, cada lectura ocupa 4 líneas. Por tanto, podemos decir que lo que te aparece en la pantalla con el head son dos lecturas y media lo que tienes
      • EN la primera línea verás el nombre de la máquina y el lugar donde se ha emplazado el cluster que está siendo secuenciado. Verás que tras el símbolo "#" no hay información, lo que significa que no se ha usado un barcode. Luego se indica /1 que esta secuencia se ha obtenido en la primera ronda de secuenciación. Por ahora, como todo termina en /1 lo único que puedes decir es que esto es una secuenciación simple. Puedes comprobarlo si ejecutas esta orden zcat $ruta/Sec_Illumina.fastq.gz | tail que lo que hace es darte la cola del archivo, no la cabecera.
      • En la segunda línea verás que se han secuenciado 38 bases
      • En la tercera línea verás el símbolo "+". El resto de la información es algo que puedes borrar si quieres, porque no se usa. Esta línea está reservada para un futuro uso
      • En la cuarta linea verás la información de la calidad expresado en texto ASCII
        • Busca en Google una tabla ASCII
        • Mira el código de calidad del archivo
        • Determina si se está usando como referencia el código 33 o el código 64 para indicar la calidad
      • Si te fijas bien, sólo la primera línea de cada lectura empieza con el código "@". Eso lo podemos aprovechar para determinar cuantas leturas hay. Hay varias formas de hacerlo
        • zcat $ruta/Sec_Illumina.fastq.gz | grep -c "@" te genera el texto del archivo Illumina. Luego envía con el pipe "|" esa información a grep, que con el cualificador "-c" lo que te hace es contar el número de veces que aparece el símbolo "@", que equivale al número de secuencias que hay. Te debe dar 25.000
        • zcat $ruta/Sec_Illumina.fastq.gz | wc -l te cuenta el número total de líneas que hay. Como cada lectura ocupa 4 líneas, solo tienes que dividir el resultado que te de por 4. Te debe dar 100.000

     

  5. Haz un análisis con el programa FastQC. Indica qué es lo que ves del análisis
  6. Cómo se descarga FastQC
    • Busca con Chrome, Firefox o lo que sea el programa FastQC. Lo tienes aquí
    • Busca un enlace que te indique Download
    • Busca el enlace adecuado para Windows, Linux o Macintosh
    • Señala el enlace con el ratón, pero esta vez dale al botón derecho del ratón para acceder a un menú contextual. Selecciona "Copiar dirección de enlace" o algo similar (eso depende del explorador que estes usando)
    • Entra en Putty
    • escribe wget y ahora dale al botón derecho del ratón (y dale a pegar si fuera necesario). De esa forma se escribirá algo similar a esto wget https://www.bioinformatics.babraham.ac.uk/projects/fastqc/fastqc_v0.11.5.zip
    • Ese archivo se ha creado en tu ordenador. Recuerda estar en tu directorio raíz o principal. Para confirmarlo, solo tienes que ejecutar la orden cd
    • Ahora tienes un archivo zip. Busca en Google como descomprimir un archivo zip bajo Linux. Hazlo, descomprime el archivounzip fas
    • Cuando hayas descomprimido el archivo, verás que en tu directorio se ha creado una nuva carpeta llamada FastQC
    • Entra en esa carpeta con a orden cd FastQC (respeta mayúsculas y minúsculas y trata de usar el tabulador para escribir más rápidamente y para evitar fallos)
    • Observa que tras dar ls -l aparece la lista de archivos
    • Lee el archivo INSTALL.txt que te da instrucciones. Hazlo dando la orden cat INSTALL.txt
    • Verás que tienes que cambiar los modos o permisos de archivo fastqc. Lo puedes hacer de dos formas
      • escribiendo chmod 755 fastqc (como indica INSTALL.txt)
      • o escribiendo chmod +x fastqc (un modo mucho más intuitivo porque es indicar que cambie el modo al +x, de eXecutable)
    • Ahora que has hecho ejecutable el archivo, lo puedes ejecutar
      • Para ejecutarlo desde Linux, deberás estar en la carpeta FastQC y escribir ./fastqc
      • Si solo le das a ./fastqc (es decir sin especificar el archivo que quieres analizar), se te abre una ventana siempre que estés en un sistema gráfico. Si estás en un terminal sin terminal gráfico no vas a conseguir nada más que un error
      • Tanto si estás en un terminal gráfico como no, si especificas el nombre del archivo a analizar, por ejemplo ./fastqc /usr/local/uco/bms/practica1/Sec_Illumina.fastq.gz verás como el programa no lanza un entorno gráfico, sino que lo analiza en un modo de terminal proporcionándote una serie de archivos que luego mediante su lectura o descarga con programas de FTP puedes analizar en tu Windows, Mac o Linux
    • Si usas Putty, deberás buscar el modo de ejecutar FastQC desde la línea de comandos. Mira las instrucciones AQUI. Luego te descargas los resultados y los ves en tu ordenador (se genera archivos html). Pero esto no te va a funcionar en la UCO por que hay un problema específico con los ordenadores de esta Universidad.
    • Si usas un entorno gráfico, ejecuta FastQC como se indica en las instrucciones README.txt o como se indica en clase.
    • Para aprender a diagnosticar y conocer lo que se puede hacer y lo que FastQC informa, ACCEDE A ESTE ENLACE
    • Indica cuántas secuencias se han analizado
    • Cuales son los errores que observas
    • En este enlace se amplia a información sobre las secuencias duplicadas, unos de los aspectos mas dificiles de interpretar
    • Si hay algún apartado dificil de valorar o interpretar, busca información con Google, y/o en los foros seqanswers o biostars
  7. Discute las observaciones y decide qué hacer con FastX-Toolkit

 

PRÁCTICAS que se pueden realizar

  1. De todos los programas incluidos en FastX-Toolkit, usa fastq-quality-filter para
    • Hacer un filtrado de las secuencias para seleccionar aquellas que tengan un mínimo de calidad igual o superior a Q20
      • Filtra las lecturas que tengan menos de un 90% de bases conteniendo una calidad Q>=20. Comenta los resultados
      • Tras el filtrado, vuelve a hacer el análisis con FastQC con el archivo obtenido y vuelve a discutir y analizar lo que has obtenido
      • ¿ Cúantas secuencias has eliminado ?
      • ¿Alguna valoración de lo que se ha realizado ?
    • Haz lo mismo otra vez sobre el archivo original, pero esta vez seleccionando secuencias con un valor igual o superior a Q28.
      • ¿Cuántas secuencias o el porcentaje de lecturas o secuencias has eliminado?
    • Ahora, y de nuevo sobre el archivo original, haz uso del programa fastq-quality-trimmer para secuencias >=Q28, pero eliminado las secuencias que tengan menos de 15 bases. Preguntate cuantas secuencias o el porcentaje) has eliminado
    • Idem que es caso anterior, para seleccionar aquellas que tienen un Q superior o igual que 28 y una longitud de al menos 15 base
  2. ¿Cúal de los dos programas es más conveniente para ser usado con Illumina ?
  1. Descarga el archivo Sec_IonTorrent.fastq.gz desde este enlace
    • Haz de nuevo un filtrado con los dos programas del grupo anterior y analizalos con FastQC y discute los resultados
    • Discuta si en este caso es mejor usar la opción fastq-quality-filter o fastq-quality-trimmer
    • Haz un trimado de las secuencias con un valor de Q>= 20. Comenta los resultados tras re-analizar con FastQC

 

Práctica 2. Actividades adicionales (a incluir en la página WEB)

  1. Busque información, servicios WEB y/o programas que le permitan calcular cuál es el tamaño del genoma de un determinado organismo usando como referencia las lecturas o la secuenciación obtenida a partir de un sistema NGS como Illumina, Ion Torrent, etc.
  2. Busque información, servicios WEB y/o programas que le permitan calcular, una vez conocido cuál es el tamaño de un genoma, la cobertura de secuenciación que sería necesaria o se recomienda para realizar un experimento de RNA-Seq.

 

 

Práctica 3. Ensamblado de un genoma de E.coli con Velvet

  1. El alumno debe descargar, pre-configurar y compilar los programas que generen los archivos ejecutables de Velvet. Es necesario que se lean de antemano las instrucciones para compilar adecuadamente el programa.
  2. A continuación debe seguir los detalles descritos en la práctica y descargar las secuencias de E.coli de servidores públicos , y luego procesarlas con el programa Velvet. Ya que Velvet utiliza los gráficos de Bruijn para realizar los ensamblados, el alumno ha de usar varios valores de kmer para los ensamblados.
  3. Luego ha de comparar los diferentes ensamblados con un genoma de referencia de tipo "trusted", esto es, de contrastada calidad y decidir cual es el valor de kmer más adecuado en su caso. Para ello usaremos el programa mauve.
  4. Opcionalmente, pero muy recomendado, el alumno debería seguir con las instrucciones para anotar completamente el genoma que ensambley quizás comparar los genomas de varias estirpes de E.coli entre si.
  5. En la página WEB el alumno ha de incluir los detalles del proceso, en particular aquellos aspectos que considere más relevante. Y si leyendo los manuales consigue incorporar alguna información o cambio significativo, será especialmente valorado.