Pangenoma anvio7
Una extenso análisis pangenómico lo podemos realizar con Anvi'o; una descripción detallada sobre el proceso para obtener un pangenoma se encuentra aquí.
Usaremos la versión anvio 7.1 para este ejercicio descargando un set de datos con seis genomas (1.8 Mpb) de Francisella tularensis. El archivo con los datos (ver abajo) se encuentra comprimido y contiene los genomas en formato fasta, una descripción general e información de los genomas.
Francisella_pan.tar.gz en Figshare
Francisella_pan.zip en Google Drive
F. tularensis es una bacteria Gram negativa causante de infecciones en humanos y también de roedores y conejos.
Existen tres subespecies:
F. tularensis tularensis predominante en Norte América, muy virulenta, asociada a infecciones pulmonares.
F. tularensis holoartica (= palearctica) predominante en Europa y Asia, menos virulenta. Carece de actividad de citrulina ureidasa y habilidad de producir ácido a partir de glucosa.
F. tularensis mediasiatica presente en Asia central.
Genomas
Accession Species Strain
NC_006570 Francisella tularensis subsp. tularensis SCHU_S4
NC_007880 Francisella tularensis subsp. holarctica LVS
NC_009257 Francisella tularensis subsp. tularensis WY96_3418
NC_009749 Francisella tularensis subsp. holarctica FTNF002_00
NC_016933 Francisella tularensis subsp. tularensis TIGB03
CP000915 Francisella tularensis subsp. mediasiatica FSC147
El primer paso es crear una base de datos para cada genoma, para esto primero debemos convertirlos a un formato que anvio maneje sin problemas:
$ conda activate anvio-7.1
$ for f in *.fasta; do anvi-script-reformat-fasta --seq-type NT $f -o $f.fa; done
Limpiemos el nombre de los archivos resultantes:
$ rename 's/.fasta//' *.fa
Los archivos con extensión .fasta ya no nos sirven, eliminémoslos:
$ rm *.fasta
El segundo paso, es crear una base de datos para cada uno con anvio. Generemos la primera base de datos para el primer genoma, usaremos como nombre del proyecto (-n) la cepa del genoma (ver arriba las cepas) con 4 núcleos (-T 4):
$ anvi-gen-contigs-database -f NC_006570.fa -n SCHU_S4 -o NC_006570.db -T 4
Sigamos con los siguientes:
$ anvi-gen-contigs-database -f NC_007880.fa -n LVS -o NC_007880.db -T 4
$ anvi-gen-contigs-database -f NC_009257.fa -n WY96-3418 -o NC_009257.db -T 4
$ anvi-gen-contigs-database -f NC_009749.fa -n FTNF002-00 -o NC_009749.db -T 4
$ anvi-gen-contigs-database -f NC_016933.fa -n TIGB03 -o NC_016933.db -T 4
$ anvi-gen-contigs-database -f CP000915.fa -n FSC147 -o CP000915.db -T 4
Alternativamente, si tenemos base de datos de funciones (COG) instaladas en la versión de anvio (en el servidor BioBacter si está instalada), podemos asignar funciones y taxonomía a sus bases de datos:
for g in *.db
do
anvi-run-hmms -c $g --num-threads 4
anvi-run-ncbi-cogs -c $g --num-threads 4
anvi-scan-trnas -c $g --num-threads 4
anvi-run-scg-taxonomy -c $g --num-threads 4
done
Como tercer paso, con estos genomas tenemos que hacer una lista de nombre y ruta a los genomas para ingresarla al siguiente comando de anvio; usaremos para extraer los nombres de las cepas el archivo Description.txt que viene en el set de datos.
cut -f3 Description.txt | sed 1d > names.tmp
$ ls -1 *.db > dbs.tmp
$ paste names.tmp dbs.tmp > genome.list
$ rm *.tmp
$ sed -i 's/.fa//g' genome.list
$ sed -i '1i name\tcontigs_db_path' genome.list
Al final tendremos nuestro archivo genome.list listo para usar.
El cuarto paso es crear la base de datos del pangenoma y calcular el pangenoma:
$ anvi-gen-genomes-storage -e genome.list -o Francisella-GENOMES.db
$ anvi-pan-genome -g Francisella-GENOMES.db -n Francisella_Pan -T 4
Creó el pangenoma (Francisella_Pan-PAN.db) en un nuevo directorio llamado Francisella_Pan/
Como tenemos también una descripción del proyecto (Description.md) e información adicional de los genomas (genome_info.txt) en nuestro set de datos, podemos importar esta información a nuestra base de datos:
$ anvi-import-misc-data genome_info.txt -p Francisella_Pan/Francisella_Pan-PAN.db --target-data-table layers
$ anvi-update-db-description --description Description.md Francisella_Pan/Francisella_Pan-PAN.db
Como un quinto paso y alternativo, podemos calcular la similitud entre los genomas mediante un Average Nucleotide Identity (ANI):
$ anvi-compute-genome-similarity -e genome.list --program pyANI --output-dir ANI -T 8 --pan-db Francisella_Pan/Francisella_Pan-PAN.db
Estamos listos para desplegar el pangenoma:
$ anvi-display-pan -p Francisella_Pan/Francisella_Pan-PAN.db -g Francisella-GENOMES.db
Si todo salió correcto debemos ver una imagen similar a la siguiente:
Para ver como analizar y manipular el pangenoma, consultar la página de Anvio al respecto: An anvi'o workflow for microbial pangenomics.