# Formato FASTQ

El formato FASTQ es un formato de archivo basado en texto para almacenar una secuencia biológica de nucleótidos y sus puntajes de calidad correspondientes. Cada nucleótido de la secuencia tiene una puntuación asignada, representada con un único carácter del código ASCII.
Se desarrolló originalmente en el Wellcome Trust Sanger Institute para agrupar una secuencia de formato FASTA y sus datos de calidad provenientes de la secuenciación. Sin embargo, se ha convertido en el estándar de facto para almacenar los resultados de instrumentos de secuenciación de alto rendimiento, como el secuenciador de la compañía Illumina.

## Formato

Las extensiones más comunes empleadas en este tipo de archivos son: ".fastq" y ".fq", pero pueden estar comprimidos con gzip y tener la extensión ".fastq.gz" y ".fq.gz". Un archivo FASTQ contiene cuatro líneas por cada secuencia:
* Línea 1 - Identificador: Inicia con el símbolo “@” seguido de un identificador único para la secuencia FASTA, que incluye el ID de la lectura (read, en inglés) y en ocasiones puede contener información adicional como el nombre de la máquina de secuenciación, la corrida y la posición de la secuencia.
* Línea 2 - Secuencia de bases: Contiene la secuencia de nucleótidos (A, T, C, G, N) sin procesar (ej.: secuencias de etiquetado, adaptadores, identificadores de célula etc.) provenientes de la secuenciación.
* Línea 3 - Separador: Comienza con “+” y opcionalmente se repite el identificador de la lectura. Sirve para delimitar el fin de la secuencia de nucleótidos (línea 2) y el inicio de la calidad de los mismos (línea 4).
* Línea 4 - Calidad de la secuenciación: Cadena de símbolos del código ASCII que representan la calidad de la secuenciación de cada nucleótido. Debe contener la misma cantidad de símbolos que letras en la secuencia.
Ejemplo de un archivo FASTQ:
Los archivos FASTQ originales de Sanger dividen las secuencias largas y las cadenas de calidad en varias líneas, de manera similar a los archivos FASTA. Esto puede complicar el análisis, ya que los caracteres "@" y "+" utilizados como marcadores también pueden aparecer en las cadenas de calidad, generando posibles ambigüedades. Actualmente, los archivos FASTQ en formato multilínea, al igual que los analizadores diseñados para este formato, son menos comunes debido a la prevalencia de tecnologías de secuenciación de lectura corta, con longitudes típicas de secuencia alrededor de 100 pb. No obstante, el tamaño de las lecturas puede ajustarse según las necesidades y configuraciones especificadas por el usuario.

### Identificadores de secuencia
## Puntaje de calidad

El puntaje de calidad (del inglés, Phred Quality Score) es la probabilidad de que exista un error en la secuencia. Este valor se obtiene usando la siguiente fórmula:
$Q=-10\,\log _{10}p$
alternativamente, se puede representar de la siguiente manera:
$p=10^{\frac {Q}{-10}}$
donde:
* Q es el puntaje de calidad Phred,
* p es la probabilidad de una asignación de base errónea.
El puntaje de calidad esta codificado por un carácter del código ASCII. Existen dos versiones, Phred+33 y Phred+64, que significa que inician con el número 33 o 64, respectivamente, del código ASCII. La versión mas utilizada es la Phred+33, comenzando con el carácter "!" y terminando con "J", que abarca un rango de calidad desde 0 hasta 41, respectivamente.
Ejemplo de una línea con caracteres del formato Phred+33:
El rango y el puntaje máximo de calidad obtenidos en una secuenciación dependen del tipo de tecnología utilizada. En lecturas sin procesar, los valores de calidad varían según el método de secuenciación y el algoritmo de llamado de bases, siendo común alcanzar un máximo de 41 en las plataformas Illumina. Sin embargo, dado que históricamente este era el valor máximo observado, muchos scripts y herramientas presentan problemas al procesar datos con puntajes superiores. Por otro lado, en lecturas procesadas, los puntajes de calidad pueden exceder este límite. Por ejemplo, se han reportado valores de calidad de hasta 45 en lecturas generadas por el servicio de secuenciación de lectura larga de Illumina (anteriormente conocido como Moleculo).

## Variantes del formato FASTQ
### Espacio de color

La tecnología de secuenciación SOLiD de Applied Biosystems se diferencia de otras al secuenciar dos bases consecutivas simultáneamente, generando un patrón superpuesto donde cada base se solapa con la siguiente. Esto permite analizar 16 combinaciones posibles de dinucleótidos, que se agrupan en 4 conjuntos específicos, cada uno compuesto por 4 dinucleótidos. Los conjuntos están representados por colores específicos, y esta codificación refleja las transiciones entre bases adyacentes.
Para estos datos, se utiliza el formato CSFASTQ, una variante del FASTQ adaptada al espacio de color. En este formato, las bases de la secuencia se codifican con los números 0, 1, 2 y 3, que indican la relación entre bases consecutivas:
* 0: Sin cambio
* 1: Transición
* 2: Transversión no complementaria
* 3: Transversión complementaria
Este sistema está diseñado específicamente para la química de secuenciación utilizada en los equipos SOLiD. Las primeras versiones del formato solo incluían bases iniciales, mientras que versiones posteriores incorporan bases adicionales en intervalos periódicos para mejorar la precisión en el mapeo y la identificación de secuencias.
El formato CSFASTQ contiene cuatro líneas por secuencia:
* Línea 1: Identificador de la secuencia, comenzando con "@".
* Línea 2: Secuencia en espacio de color.
* Línea 3: Separador representado por un signo "+".
* Línea 4: Valores de calidad de la secuencia.
En algunas herramientas de análisis, el puntaje de calidad del nucleótido inicial puede estar incluido o excluido, dependiendo de la configuración. Este puntaje inicial, representado como 0 (correspondiente al carácter '!' en ASCII), varía según el software y las necesidades del análisis.

### FAST4, FAST5 y HDF5

El formato FAST4 fue diseñado como una variante del FASTQ que almacena probabilidades independientes para cada una de las cuatro bases (A, C, G, T). Este formato era utilizado por Swift Basecaller, un paquete de código abierto para el análisis de datos de secuenciación que incluía desde el procesamiento de imágenes hasta la generación de secuencias.
Posteriormente, se desarrolló el formato FAST5, basado en la estructura de datos jerárquicos HDF5. Este formato es utilizado por (Oxford Nanopore Technologies) y ofrece un esquema de almacenamiento específico para datos de secuenciación generados por sus plataformas.

## Bases de datos de acceso libre para archivos FASTQ

* NCBI Sequence Read Archive (SRA): El SRA del NCBI es una de las mayores bases de datos de secuenciación, incluidos datos en formato FASTQ. Se pueden descargar los datos sin procesar directamente desde SRA usando la herramienta del software SRA Toolkit.
* European Nucleotide Archive (ENA): La ENA se encuentra gestionada por el EMBL-EBI, siendo otra base de datos de secuenciación. Es compatible con el SRA y ofrece acceso a datos sin procesar en múltiples formatos, incluido FASTQ. Puedes descargar los datos directamente en el formato FASTQ desde su página ENA Browser o utilizando wget con el enlace en línea de comandos, por ejemplo: wget ftp://ftp.sra.ebi.ac.uk/vol1/fastq/SRR123/001/SRR1234567/SRR1234567.fastq.gz
* Banco de datos de ADN de Japón (DDBJ): Es una base de datos proveniente de Japón para secuencias de ADN, y se encuentra interconectada con SRA y ENA, por lo que muchos de sus datos son compartidos entre estas bases de datos. Los datos de FASTQC se encuentran disponibles en esta plataforma, y también puedes usar herramientas del SRA Toolkit para descargarlos.
* Gene Expression Omnibus (GEO): Base de datos pública del NCBI que almacena datos de expresión génica y genómica de experimentos como microarrays y RNA-Seq. Los datos están disponibles de forma gratuita y se pueden descargar en formatos como FASTQ, BAM, y TXT. También se puede acceder a través de herramientas como GEOquery en R.
* Laboratorio Europeo de Biología Molecular - Instituto Europeo de Bioinformática (EMBL-EBI): Instituto de investigación biomédica y bioinformática que proporciona acceso a bases de datos biológicos y herramientas de análisis para la investigación genómica, proteómica, metabolómica y otras áreas de la biología. Ofrece recursos públicos como bases de datos de secuencias (ENA), herramientas de análisis bioinformático y plataformas de visualización de datos.
* Genome Sequence Archive (GSA): El GSA es la base de datos de secuencias de China, gestionada por el National Genomics Data Center (por sus siglas en inglés, NGDC). Ofrece una variedad de datos de secuenciación, incluidos archivos FASTQ. Puedes acceder a los datos de secuenciación de GSA para proyectos específicos de Asia, y también hay herramientas para descargar en formato FASTQ.
* El Atlas del Genoma del Cáncer (TCGA): Aunque el objetivo principal de TCGA es el cáncer, proporciona una gran cantidad de datos genómicos en bruto, incluyendo secuencias en FASTQ para varios tipos de cáncer. Requiere una cuenta en el portal de datos del NCI GDC para algunos datos, especialmente aquellos protegidos, pero los datos abiertos de control pueden ser descargados libremente.
* Human Cell Atlas (HCA): Proporciona datos de secuenciación de células individuales, incluyendo single-cell RNA-seq (scRNA-seq) y otros tipos de secuenciación, en formato FASTQ. Los datos están organizados por proyecto, y es posible descargarlos directamente para realizar análisis de calidad.
* BaseSpace Sequence Hub de Illumina: Ofrece datos de secuenciación de diversos proyectos en su plataforma de nube, algunos de ellos de acceso público, especialmente proyectos de referencia. Necesitas crear una cuenta gratuita y, posteriormente, puedes acceder a proyectos públicos en formato FASTQ.
Estas bases de datos ofrecen una amplia variedad de datos genómicos que puedes utilizar para realizar control de calidad con FASTQC o para desarrollar y probar herramientas bioinformáticas.

## Herramientas para el análisis de archivos FASTQ
### Control de calidad

El análisis de calidad de las lecturas en archivos FASTQ es un paso crucial antes de realizar cualquier análisis downstream, ya que garantiza la confiabilidad y precisión de los datos.
* FastQC
** Es una herramienta estándar ampliamente utilizada para evaluar la calidad de las lecturas crudas en formato FASTQ.
** Genera un informe visual en formato .html que incluye métricas clave como:
*** Calidad promedio por base (gráficos de puntajes Phred).
*** Contenido de bases (A, T, G, C) por posición.
*** Distribución de longitudes de secuencia.
*** Presencia de adaptadores y secuencias contaminantes.
*** Lecturas duplicadas.
** Los resultados se agrupan como pasado (green), advertencia (orange) o fallo (red) para una rápida evaluación.
* MultiQC
** Es una herramienta complementaria que integra los informes generados por FastQC y otras herramientas bioinformáticas.
** Produce un reporte único consolidado que permite evaluar tendencias generales y comparar múltiples muestras.
** Ideal para proyectos con muchas muestras, como experimentos de RNA-seq, metagenómica o secuenciación de exomas.

### Archivos de entrada

* Secuenciación single-end: Produce un único archivo (SRRxxxxx.fastq.gz) donde cada lectura es independiente.
* Secuenciación paired-end: Genera dos archivos:
** SRRxxxxx_1.fastq.gz: Contiene las lecturas del extremo 1 (forward).
** SRRxxxxx_2.fastq.gz: Contiene las lecturas del extremo 2 (reverse).
** Estos archivos deben procesarse de manera conjunta durante el análisis para mantener la relación entre pares.

### Eliminación de adaptadores y secuencias de baja calidad (Trimming)

Después del control de calidad inicial, el trimming elimina secuencias no deseadas, como adaptadores, y filtra lecturas con baja calidad para mejorar los resultados del análisis posterior.
* Herramientas populares:
** Trimmomatic:
*** Herramienta eficiente y flexible para trimming de lecturas.
*** Funcionalidades:
**** Eliminación de adaptadores.
**** Recorte de bases de baja calidad al inicio o final de las lecturas.
**** Eliminación de lecturas cortas después del recorte.
**** Compatible con datos single-end y paired-end.
**** Permite un trimming dinámico basado en ventanas deslizantes para evaluar la calidad promedio.
** Cutadapt:
*** Versátil para detectar y recortar adaptadores, incluso si solo están parcialmente presentes.
*** Características:
**** Identificación de adaptadores en cualquier extremo de la lectura.
**** Ajuste automático a datos paired-end.
**** Opciones para recortar secuencias con baja calidad o bases ambiguas (N).
**** Salida en formatos compatibles con herramientas downstream como FastQC o alineadores.
* Importancia del trimming:
** Mejora la calidad global de los datos, eliminando regiones de baja calidad que podrían interferir con la alineación o el ensamblaje.
** Reduce los errores en el mapeo y mejora la precisión de análisis downstream, como el análisis de expresión diferencial o la identificación de variantes.

## Convertidores de formato FASTQ

Diversas herramientas permiten la conversión entre variantes de FASTQ (Sanger, Solexa, Illumina 1.3+), como:
* Biopython (desde la versión 1.51)
* EMBOSS (desde la versión 6.1.0)
* BioPerl (desde la versión 1.6.1)
* BioRuby (desde la versión 1.4.0)
* BioJava (desde la versión 1.7.1)