Tengo un genoma eucariota para el que se obtuvo recientemente una secuencia actualizada para un cromosoma. Quiero mapear las lecturas de RNAseq en el genoma (y realizar otros análisis posteriores) y me gustaría usar la información más actualizada posible (por lo tanto, la secuencia "nueva" de ese cromosoma).
Sin embargo, antes de realizar el mapeo de lectura, me gustaría actualizar la anotación de mi genoma (GFF3) para que coincida con las 'nuevas' coordenadas de este cromosoma.
Básicamente, me gustaría transferir información del GFF3 de 'coordenadas antiguas' para obtener un GFF3 de 'coordenadas nuevas' y, si es posible, conservar toda la información / jerarquía del archivo (gen, ARNm, exón, etc.).
gen fuente chrXX 222 5942. -. ID = gene_1; Nombre = gene_1; longitud = 5720chrXX fuente mRNA 222 5942. -. ID = gene_1.1; Parent = gene_1; Name = gene_1.1; length = 5720chrXX fuente exón 222 5794. -. ID = gene_1.1.2; Parent = gene_1.1chrXX fuente exón 5889 5942. -. ID = gene_1.1.1; Parent = gene_1.1chrXX fuente CDS 222 5794. - 1 ID = CDS: gene_1.1.2; Parent = gene_1.1; Name = gene_1.1chrXX fuente CDS 5889 5942. - 0 ID = CDS: gene_1.1.1; Parent = gene_1.1; Name = gene_1.1
... debe actualizarse a ...
gen fuente chrXX 333 6053. -. ID = gene_1; Nombre = gene_1; longitud = 5720chrXX fuente mRNA 333 6053. -. ID = gene_1.1; Parent = gene_1; Name = gene_1.1; length = 5720chrXX fuente exón 333 5905. -. ID = gene_1.1.2; Parent = gene_1.1chrXX fuente exón 6000 6053. -. ID = gene_1.1.1; Parent = gene_1.1chrXX fuente CDS 333 5905. - 1 ID = CDS: gene_1.1.2; Parent = gene_1.1; Name = gene_1.1chrXX fuente CDS 6000 6053. - 0 ID = CDS: gene_1.1.1; Parent = gene_1.1; Name = gene_1.1
El enfoque que probé (pero no estoy seguro es la forma de hacerlo):
- Extraiga la secuencia de todas las características que se actualizarán a fasta (
bedtools getfasta
) - Asigne estas secuencias al genoma con el cromosoma actualizado (
gmap
con--nosplicing
ya que las secuencias que estamos mapeando corresponden a regiones genómicas). - Cree el archivo GFF3 actualizado. Al hacer eso, aplico una regla complementaria: si una característica se mapeó en otro cromosoma, pero también hubo otra alineación en el cromosoma actualizado, priorice la que corresponde al mismo cromosoma (actualizado).
¿Cuál sería la forma correcta de hacer tal cosa? ¡Cualquier sugerencia de métodos / herramientas es bienvenida!