Formato FASTA
En bioinformática y bioquímica, el formato FASTA es un formato basado en texto para representar secuencias de nucleótidos o secuencias de aminoácidos (proteínas), en el que los nucleótidos o aminoácidos se representan mediante códigos de una sola letra..
El formato permite que los nombres de secuencia y los comentarios precedan a las secuencias. Se originó a partir del paquete de software FASTA, pero ahora se ha convertido en un estándar casi universal en el campo de la bioinformática.
La simplicidad del formato FASTA facilita la manipulación y el análisis de secuencias utilizando herramientas de procesamiento de texto y lenguajes de programación.
Descripción general
Una secuencia comienza con un carácter mayor que (">") seguido de una descripción de la secuencia (todo en una sola línea). Las siguientes líneas que siguen inmediatamente a la línea de descripción son la representación de la secuencia, con una letra por aminoácido o ácido nucleico, y normalmente no tienen más de 80 caracteres de longitud.
Por ejemplo:
■ MCHU - Calmodulin - Humano, conejo, bovina, rata y pollo
MADQLTEEQIAEFKEAFSLFDKDGTITTKELGTVMRSLGQNPTEAELQDMINEVDADGNGTID
FPEFLTMMARKMKDTDSEEEIREAFRVFDKDGNGYISAAELRHVMTNLGEKLTDEEVDEMIREA
DIDGQVNYEEFVQMMTAK *
Formato original
El formato FASTA/Pearson original se describe en la documentación del conjunto de programas FASTA. Se puede descargar con cualquier distribución gratuita de FASTA (consulte fasta20.doc, fastaVN.doc o fastaVN.me, donde VN es el número de versión).
En el formato original, una secuencia se representaba como una serie de líneas, cada una de las cuales no tenía más de 120 caracteres y normalmente no superaba los 80 caracteres. Probablemente esto fue para permitir la preasignación de tamaños de línea fijos en el software: en ese momento la mayoría de los usuarios confiaban en terminales VT220 (o compatibles) de Digital Equipment Corporation (DEC) que podían mostrar 80 o 132 caracteres por línea. La mayoría de la gente prefería la fuente más grande en los modos de 80 caracteres, por lo que se convirtió en la moda recomendada utilizar 80 caracteres o menos (a menudo 70) en las líneas FASTA. Además, el ancho de una página impresa estándar es de 70 a 80 caracteres (según la fuente). Por tanto, 80 caracteres se convirtieron en la norma.
La primera línea de un archivo FASTA comenzaba con un ">" (mayor que) símbolo o, con menos frecuencia, un ";" (punto y coma) se tomó como comentario. El software ignorará las líneas posteriores que comiencen con punto y coma. Dado que el único comentario utilizado era el primero, rápidamente se utilizó para contener una descripción resumida de la secuencia, a menudo comenzando con un número de acceso de biblioteca único, y con el tiempo se ha vuelto común usar siempre ">" para la primera línea y no utilizar ";" comentarios (que de otro modo serían ignorados).
Después de la línea inicial (utilizada para una descripción única de la secuencia) estaba la secuencia real en una cadena de caracteres estándar de una letra. Cualquier cosa que no sea un carácter válido se ignorará (incluidos espacios, tabuladores, asteriscos, etc...). También era común terminar la secuencia con un "*" (asterisco) (en analogía con el uso en secuencias formateadas PIR) y, por la misma razón, dejar una línea en blanco entre la descripción y la secuencia. A continuación se muestran algunas secuencias de muestra:
;LCBO - Precursor de prolactina - Bovine
; una secuencia de muestra en formato FASTA
MDSKGSSQGSRLLLVVSNLLLCQGVSTPVCPNGPGNCQVSLRDLFDRAVMVSHYIHDLSS
EMFNEFDKRYAQGKGFITMALNSCHTSSLPTPEDKEQAQTHHEVLMSLILGLLRSWNDPLYHL
VTEVRGMKGAPDAILSRAIEEENKRLLEGMEMIFGQVIPGAKETEPYPVWSGLPSLQTKDED
ARYSAFYNLLHCLRRDSSKIDTYLKLLNCRIIYNNNC *
■ MCHU - Calmodulin - Humano, conejo, bovina, rata y pollo
MADQLTEEQIAEFKEAFSLFDKDGTITTKELGTVMRSLGQNPTEAELQDMINEVDADGNGTID
FPEFLTMMARKMKDTDSEEEIREAFRVFDKDGNGYISAAELRHVMTNLGEKLTDEEVDEMIREA
DIDGQVNYEEFVQMMTAK *
[Elephas maximus maximus]
LCLYTHIGRNIYGSYLYSETWNTGIMLLLITMATAFMGYVLPWGQMSFWGATVITNLFSAIPYIGTNLV
EWIWGGFSVDKATLNRFFAFHFILPFTMVALAGVHLTFLHETGSNNPLGLTSDKIPFHPYYTIKDFLG
LLILILLLLALLSPDMLGDPDNHMPADPLNTPLHIKPEWYFLFAYAILRSVPNKLGGVLALFLSIVIL
GLMPFLHTSKHRSMMLRPLSQALFWTLTMDLLTLTWIGSQPVEYPYTIIGQMASILYFSIILAFLPIAGX
IENY
Un formato FASTA de secuencia múltiple se obtendría concatenando varios archivos FASTA de secuencia única en un archivo común (también conocido como formato FASTA múltiple). Esto no implica una contradicción con el formato, ya que sólo la primera línea de un archivo FASTA puede comenzar con ";" o ">", lo que obliga a todas las secuencias posteriores a comenzar con un ">" para ser tomados como diferentes (y forzando aún más la reserva exclusiva de ">" para la línea de definición de secuencia). Por lo tanto, los ejemplos anteriores también pueden tomarse como un archivo multisecuencia (es decir, multi-FASTA) si se toman en conjunto.
Hoy en día, los programas bioinformáticos modernos que se basan en el formato FASTA esperan que los encabezados de secuencia estén precedidos por ">", y la secuencia real, aunque generalmente se representa como "intercalada", es decir, en varias líneas como en el ejemplo anterior, también puede ser "secuencial" cuando el tramo completo se encuentra en una sola línea. Es posible que los usuarios a menudo necesiten realizar una conversión entre archivos "secuenciales" y "Intercalado" Formato FASTA para ejecutar diferentes programas bioinformáticos.
Línea descriptiva
La línea de descripción (defline) o línea de encabezado/identificador, que comienza con '>', proporciona un nombre y/o un identificador único para la secuencia y también puede contener información adicional. En una práctica obsoleta, la línea de encabezado a veces contenía más de un encabezado, separado por un carácter ^A (Control-A). En el formato FASTA original de Pearson, pueden aparecer uno o más comentarios, distinguidos por un punto y coma al principio de la línea, después del encabezado. Algunas bases de datos y aplicaciones bioinformáticas no reconocen estos comentarios y siguen la especificación NCBI FASTA. A continuación se muestra un ejemplo de un archivo FASTA de secuencia múltiple:
■SEQUENCE_1
MTEITAAMVKELRESTGAGMMDCKNALSETNGDFDKAVQLLREKGKAAKKADRLAAEG
LVSVKVSDDFTIAAMRPSYEDLDMTFVENEYKALVAELEKENEERRRLKDPNKPEHK
IPQFASRKQLSDAILKEAEEKIKEELKAQGKPEKIWDNIIPGKMNSFIADNSQLDSKLTL
MGQFYVMDDKTVEQVIAEKEFGKIKIVEFICFEVGEGLEKTEDFAAEVAAQL
■SEQUENCE_2
SATVSEINSETDFVAKNDQFIALTKDTTAHIQSNSLQSVEELHSSTINGVKFEEYLKSQI
ATIGENLVVRRFATLKAGANGVNGYIHTNGRVGVVIAAACDSAEVASKSRDLLRQICMH
Identificadores NCBI
El NCBI definió un estándar para el identificador único utilizado para la secuencia (SeqID) en la línea del encabezado. Esto permite etiquetar una secuencia que se obtuvo de una base de datos con una referencia a su registro de base de datos. El formato del identificador de la base de datos lo entienden las herramientas NCBI como makeblastdb
y table2asn
. La siguiente lista describe el formato definido por NCBI FASTA para identificadores de secuencia.
Tipo | Formatos | Ejemplos |
---|---|---|
local (es decir, sin referencia a la base de datos) | lcl|integer
| lcl|123
|
GenInfo backbone seqid | bbs|integer | bbs|123 |
GenInfo backbone moltype | bbm|integer | bbm|123 |
ID de importación GenInfo | gim|integer | gim|123 |
GenBank | gb|accession|locus | gb|M73307|AGMA13GT |
EMBL | emb|accession|locus | emb|CAM43271.1| |
PIR | pir|accession|name | pir||G36364 |
SWISS-PROT | sp|accession|name | sp|P01013|OVAX_CHICK |
patente | pat|country|patent|sequence-number | pat|US|RE33188|1 |
pre-grant patent | pgp|country|application-number|sequence-number | pgp|EP|0238993|7 |
RefSeq | ref|accession|name | ref|NM_010450.1| |
Base de referencia general (una referencia a una base de datos que no está en esta lista) | gnl|database|integer
| gnl|taxon|9606
|
Base de datos integrada GenInfo | gi|integer | gi|21434723 |
DDBJ | dbj|accession|locus | dbj|BAC85684.1| |
PRF | prf|accession|name | prf||0806162C |
PDB | pdb|entry|chain | pdb|1I4L|D |
de terceros GenBank | tpg|accession|name | tpg|BK003456| |
terceros EMBL | tpe|accession|name | tpe|BN000123| |
DDBJ de terceros | tpd|accession|name | tpd|FAA00017| |
TrEMBL | tr|accession|name | tr|Q90RT2|Q90RT2_9HIV1 |
Las barras verticales ("|") en la lista anterior no son separadores en el sentido de la forma Backus-Naur, sino que son parte del formato. Se pueden concatenar varios identificadores, también separados por barras verticales.
Representación de secuencia
Después de la línea del encabezado, se representa la secuencia real. Las secuencias pueden ser secuencias de proteínas o secuencias de ácidos nucleicos y pueden contener espacios o caracteres de alineación (ver alineación de secuencias). Se espera que las secuencias estén representadas en los códigos estándar de aminoácidos y ácidos nucleicos IUB/IUPAC, con estas excepciones: se aceptan letras minúsculas y se asignan a mayúsculas; se puede utilizar un solo guión o guión para representar un carácter de espacio; y en secuencias de aminoácidos, U y * son letras aceptables (ver más abajo). No se permiten dígitos numéricos, pero se utilizan en algunas bases de datos para indicar la posición en la secuencia. Los códigos de ácido nucleico admitidos son:
Código de Ácido Núcleo | Significado | Mnemonic |
---|---|---|
A | A | Adenine |
C | C | Cytosine |
G | G | Guanine |
T | T | Thymine |
U | U | Uracil |
i) | i | inosina (no estándar) |
R | A o G (I) | puRine |
Y | C, T o U | pirimidines |
K | G, T o U | bases que son Ketones |
M | A o C | bases con grupos aMino |
S | C o G | Sinteracción de trong |
W | A, T o U | Winteracción ágil |
B | no A (es decir, C, G, T o U) | B viene después de A |
D | no C (es decir, A, G, T o U) | D viene después de C |
H | no G (es decir, A, C, T o U) | H viene después de G |
V | ni T ni U (es decir, A, C o G) | V viene después de U |
N | A C G T U | Nácido ucleico |
- | brecha de longitud indeterminada |
Los códigos de aminoácidos admitidos (22 aminoácidos y 3 códigos especiales) son:
Amino Acid Code | Significado |
---|---|
A | Alanine |
B | Ácido aspartico (D) o Asparagine (N) |
C | Cysteine |
D | Ácido aspartico |
E | Ácido glutamico |
F | Fenilalanina |
G | Glycine |
H | Histidina |
I | Isoleucine |
J | Leucine (L) o Isoleucine (I) |
K | Lysine |
L | Leucine |
M | Methionine/Start codon |
N | Asparagine |
O | Pirrolysine (rare) |
P | Proline |
Q | Glutamina |
R | Arginine |
S | Serine |
T | Threonine |
U | Selenocysteine (rare) |
V | Valine |
W | Tryptophan |
Y | Tyrosine |
Z | Ácido Glutámico (E) o Glutamina (Q) |
X | cualquiera |
* | stop |
- | brecha de longitud indeterminada |
Archivo FASTA
Extensión de nombre de archivo
No existe una extensión de nombre de archivo estándar para un archivo de texto que contenga secuencias formateadas FASTA. La siguiente tabla muestra cada extensión y su respectivo significado.
Extensión | Significado | Notas |
---|---|---|
Fasta, fa | FASTA | Cualquier archivo rápido genérico. Vea a continuación para otras extensiones de archivo FASTA comunes |
Fna | Ácido nucleico FASTA | Usado genéricamente para especificar ácidos nucleicos. |
ffn | nucleótido FASTA de regiones genéticas | Contiene regiones de codificación para un genoma. |
fa | Aminoácido FASTA | Contiene secuencias de aminoácidos. Un archivo de ayuna de proteína múltiple puede tener la extensión más específica mpfa. |
frn | FASTA | Contiene regiones de ARN no codificación para un genoma, en el alfabeto de ADN, por ejemplo tRNA, rRNA |
Compresión
La compresión de archivos FASTA requiere un compresor específico para manejar ambos canales de información: identificadores y secuencia. Para obtener mejores resultados de compresión, estos se dividen principalmente en dos corrientes donde la compresión se realiza asumiendo independencia. Por ejemplo, el algoritmo MFCompress realiza una compresión sin pérdidas de estos archivos utilizando modelado de contexto y codificación aritmética y Genozip, un paquete de software para comprimir archivos genómicos, utiliza un modelo extensible basado en contexto. Para conocer los puntos de referencia de los algoritmos de compresión de archivos FASTA, consulte Hosseini et al., 2016 y Kryukov et al., 2020.
Cifrado
El cifrado de archivos FASTA se puede realizar con una herramienta de cifrado específica: Cryfa. Cryfa utiliza cifrado AES y permite compactar datos además del cifrado. Como alternativa, Genozip puede cifrar archivos FASTA con AES-256 durante la compresión.
Extensiones
El formato FASTQ es una forma de formato FASTA ampliado para indicar información relacionada con la secuenciación. Está creado por el Centro Sanger de Cambridge.
A2M/A3M son una familia de formatos derivados de FASTA utilizados para alineamientos de secuencias. En las secuencias A2M/A3M, los caracteres en minúscula se consideran inserciones, que luego se indican en las otras secuencias como el carácter de punto ("."). Los puntos se pueden descartar para que sean compactos sin pérdida de información. Al igual que con el FASTA típico utilizado en alineaciones, el espacio ("-") se considera exactamente una posición. A3M es similar a A2M, con la regla adicional de que los espacios alineados con las inserciones también se pueden descartar.
Trabajar con archivos FASTA
La comunidad ofrece una gran cantidad de scripts fáciles de usar para realizar manipulaciones de archivos FASTA. También están disponibles cajas de herramientas en línea, como FaBox o FASTX-Toolkit, dentro de los servidores Galaxy. Por ejemplo, se pueden utilizar para segregar encabezados/identificadores de secuencias, cambiarles el nombre, acortarlos o extraer secuencias de interés de archivos FASTA grandes en función de una lista de identificadores deseados (entre otras funciones disponibles). También existe un enfoque basado en árbol para clasificar archivos multi-FASTA (TREE2FASTA) basado en la coloración y/o anotación de secuencias de interés en el visor FigTree. Además, el paquete Biostrings de Bioconductor.org se puede utilizar para leer y manipular archivos FASTA en R.
Existen varios convertidores de formatos en línea para reformatear rápidamente archivos multi-FASTA a diferentes formatos (por ejemplo, NEXUS, PHYLIP) para su uso con diferentes programas filogenéticos (por ejemplo, como el convertidor disponible en phylogeny.fr.
Contenido relacionado
Trinquete de muller
Mummichog
Máquina virtual paralela