Clasificación funcional
Para clasificar las lecturas obtenidas en funciones, podemos usar varias opciones online, la más recomendable es MG-RAST, pero es extremadamente lenta (semanas) o bien en el servidor. En el servidor tenemos SUPERFOCUS que de manera mas o menos rápida clasifica las lecturas en los grupos funcionales de SEED y también podemos hacer una clasificación funcional con Anvio usando la base de datos COG o KEGG, con esta última también podemos reconstruir rutas metabólicas.
SUPERFOCUS
NOTA. Debido a que este análisis puede llevar mucho tiempo, es recomendable correrlo con screen, además es necesario activar conda:
En caso que no tengan CONDA es su PATH, podemos decirle donde esta con:
$ source /opt/miniconda/etc/profile.d/conda.sh
y ahora si podemos activar el ambiente conda:
$ conda activate python3.6
Comando
Ejemplo para usar en biobacter con un solo archivo, el archivo pude ser un concatenado como se describe aquí.
(python3.6)$ superfocus -q FILE.fasta -dir superfocus -t 8
Ejemplo con varios archivos en un subdirectorio:
(python3.6)$ superfocus -q folder_with_seqs -dir superfocus -t 8
Opciones
-h ------: print help
-q query file (FASTA or FASTQ format) or folder with multiple FASTA/FASTQ files when -m 1
-dir string: output directory
-m int: run the program for multiple files - 0 (False) / 1 ( True) (default: 0)
-o string: project name (default 'my_project')
-mi float: minimum identity (default 60 %)
-ml int: minimum alignment (amino acids) (default: 15)
-focus int: runs FOCUS; 1 does run; 0 does not run: default 0
-t int: number of threads (default 8)
-e float: e-value (default 0.00001)
-db string: database (DB_90, DB_95, DB_98, or DB_100; default DB_98)
-p int: amino acid input; 0 nucleotides; 1 amino acids (default 0)
-a string: aligner choice (rapsearch, blast, diamond; default rapsearch)
-fast int: runs RAPSearch2 or DIAMOND on fast mode - 0 (False) / 1 (True) (default: 1)
-n int: normalizes each query counts based on number of hits; 0 doesn't normalize; 1 normalizes (default: 1)
-r string: use only the subsystems in the organisms predicted by -focus ncbi / rast annotation (default: ncbi)
Resultado
El resultado del análisis es una tabla tipo excel con cuatro niveles jerárquicos de clasificación de genes de RAST-SEED:
Subsystem Level 1 Subsystem Level 2 Subsystem Level 3 SEED Function Number of assignments Relative Abundance (%)Amino Acids and Derivatives - Amino acid racemase Alanine_racemase_(EC_5.1.1.1) 12.1666666667 0.0041213878576Amino Acids and Derivatives - Amino acid racemase Aspartate_racemase_(EC_5.1.1.13) 1.5 0.000508116311211Amino Acids and Derivatives - Amino acid racemase Cryptic_alanine_racemase 0.25 8.46860518685e-05Amino Acids and Derivatives - Amino acid racemase Diaminopimelate_epimerase_(EC_5.1.1.7) 4.0 0.0013549768299Amino Acids and Derivatives - Amino acid racemase Glutamate_racemase_(EC_5.1.1.3) 4.72380952381 0.0016001631134Amino Acids and Derivatives - Amino acid racemase Proline_racemase_(EC_5.1.1.4) 0.5 0.000169372103737Esta tabla puede convertirse a una tabla que puede graficarse con Krona con los siguientes comandos:
$ cut -f1-5 my_project__results__all_levels_and_function.xls | awk -v OFS='\t' 'BEGIN {FS="\t"}; {print $5, $1, $2, $3, $4}' | sed 1,4d > FILE.krona
Lo que hacemos es básicamente cambiar el orden de las columnas con los valores en la primer columna y la clasificación después, ademas de alguna limpieza del archivo. Este nuevo archivo puede ya graficarse con Krona y generar un archivo html para visualizar e interactuar en cualquier navegador:
$ ktImportText -o FILE.html FILE.krona
El resultado del gráfico de Krona es como el siguiente:
SCRIPT
superfocus_classifier
Tenemos en Biobacter un script que permite correr superfocus, solo tenemos que ejecutarlo y él nos pedirá el directorio que contengan los archivos en formato fasta o fastq (uno solo por muestra) y que clasificador queremos usar.
$ /opt/genomicrob/superfocus_classifier.v0.1.2.sh
Creará un directorio llamado superfocus con los resultados.