CURSO: MÉTODOS COMPUTACIONALES EN BIOINFORMÁTICA 2023 MODULO GENOMAS DE PROCARIOTAS #### Tema, Ensamblaje de genomas de procariotas ### ### Julio Hernández ### Conocer y practicar herramientas de ensamblaje ## Las líneas que comienzan con ## son notas o comentarios ## Las líneas sombreadas son líneas de comandos. El símbolo $ representa el prompt ** ** ## http://microbial-genomes.org/ # 2 Crear una carpeta, nombrarla ensamblaje $ mkdir ensamblaje ## 3 Copiar un par de lecturas a la carpeta que crearon, las lecturas están en ## /home/rvazquez/ejercicios_linux/Ensambles ## Archivos: SRR52786201_1.fastq, SRR52786201_2.fastq $ cp /home/rvazquez/ejercicios_linux/Ensambles/SRR52786201_1.fastq . $ cp /home/rvazquez/ejercicios_linux/Ensambles/SRR52786201_2.fastq . ## También copiar el archivo GCF_002156645.1_ASM215664v1_genomic.fna a su carpeta $ cp /home/rvazquez/ejercicios_linux/Ensambles/ GCF_002156645.1_ASM215664v1_genomic.fna . ## Explorar lecturas con: head, tail, more . $ head SRR52786201_1.fastq $ tail SRR52786201_1.fastq $ more SRR52786201_1.fastq ## para salir pulsar la tecla q ## 4 contar las lecturas con: grep y wc -l # anota los resultados $ grep -c "^@" SRR52786201_1.fastq $ grep -c "^@" SRR52786201_2.fastq $ grep -c "^+" SRR52786201_1.fastq $ grep -c "^+" SRR52786201_2.fastq ## 5 Por qué es diferente el resultado? ## 6 como podría asegurar el mismo resultado? ## usa el comando wc, ¿que hace? (man wc) $ wc -l SRR52786201_1.fastq ## Anota el resultado $ wc -l SRR52786201_2.fastq ## ¿Que significan los resultados? ## Explorar los programas para ensamblar $ spades -h $ a5 -h ## Ensamblar con a5 ## Tener en cuenta que no checamos los valores de calidad de las lecturas, tampoco ## hicimos limpieza $ a5 SRR52786201_1.fastq SRR52786201_2.fastq –-end=5 --threads=6 Lja5 ## Observen que a5 al inicio corre el comando # java -Xmx512m -jar '/opt/a5_miseq_linux_20160825/bin'/trimmomatic.jar SE -threads 6 -phred33 Lja5.s1/SRR52786201_1.fastq.both.fastq Lja5.s1/SRR52786201_1.fastq.trim.fastq ILLUMINACLIP:/opt/a5_miseq_linux_20160825/bin/../adapter.fasta:2:30:10 LEADING:3 TRAILING:3 SLIDINGWINDOW:4:15 MINLEN:36 ## Una vez terminado el proceso, se genera una carpeta con el nombre que le indicamos en la línea de comandos. En este caso la carpeta es: Lja5. ## Dentro de la carpeta hay varias subcarpetas con información del proceso pero los archivos que nos interesan son los tipo “*.fasta”. ## Estos programas son los que hacen la limpieza de las lecturas, es decir, eliminan adaptadores, y lecturas de mala calidad # Se puede correr también iniciando con el comando “nohup time” ## Iniciar con el comando “nohup”, nos sirve para que podamos apagar nuestro equipo y ## que el proceso siga corriendo en el servidor. Muy común para procesos que tardan horas. $ nohup time a5 SRR52786201_1.fastq SRR52786201_2.fastq --threads=12 a5Lj201 &> OutputSRR52786201.txt & [1] 13739 ## El valor desplegado (13739) es el numero que se le asigno al proceso con lo que es posible identificarlo cuando se revisa la actividad del servidor. ## Una vez terminado el proceso, se genera una carpeta con el nombre que le indicamos ## en la línea de comandos. En este caso la carpeta es: Lja5. ## Dentro de la carpeta hay varias subcarpetas con información del proceso pero los ## archivos que nos interesan son los tipo “*.fasta”. ## En éste ejemplo se generarán los archivos: ## Scaffold.fasta ## Contigs.fasta ## Estos son los archivos que contienen las secuencias que conforman el ensamblaje. El ## Uno de los criterios para ver cual es mejor ensamblaje será el que tenga el menor ## número de contigs. ## Explorar los ensambles (archivos fasta) con: head, tail, more. ## Para ver el numero de contigs de los ensamblajes se puede hacer con el comando “grep” $ grep -c "^>" ## Nos despliega el nombre del archivo y el numero de contigs (recordar que cada contig ## empieza con el símbolo “>” ## Ensamblar las mismas lecturas con SPAdes $ nohup time spades -t 12 -m 12 -1 SRR52786201_1.fastq -2 SRR52786201_2.fastq -o Lj-SPAdes &> Output-SPAdesLj.txt & _______________________________________ ## comparar ensambles con Quast $ quast -R GCF_002156645.1_ASM215664v1_genomic.fna Lja5.contigs.fasta scaffolds.fasta -o Result ## Como resultado se genera una carpeta con el nombre que le indicamos en la línea de ## comandos (Result en este caso). ## Al interior hay otras subcarpetas con algunos estadísticos del proceso y algunos ## reportes. El que nos interesa es el archivo “report.html” que es un archivo tipo html ## que podremos visualizar en cualquier navegador. ## Mover el archivo report.html de Result a su computadora ## En las notas menciono como lo muevo con el comando scp ## Revisar el reporte abriéndolo en algún navegador ## Notas y Comandos útiles ## Descargar un archivo de una base de datos publica, por ejemplo, la base de datos de ## “Genomas” del NCBI. Para descargarlo en nuestra computadora hay que identificar en ## la base de datos la dirección del sitio WEB del archivo y esta dirección se liga al ## comando “wget” $ sudo wget https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/002/156/645/GCF_002156645.1_ASM215664v1/GCF_002156645.1_ASM215664v1_genomic.fna.gz ## Anteponer “sudo” al comando “wget” nos permite ejecutar el comando como ## superusuario. En caso de que no corra solo con “wget”, intentar con “sudo wget” ## Descomprimir, para descomprimir archivos tipo gz: $ zcat GCF_002156645.1_ASM215664v1_genomic.fna.gz > GCF_002156645.1_ASM215664v1_genomic.fna ## Copiar un archivo de mi laptop a la máquina del CIBNOR (se escribe en la terminal de la ## laptop) $ scp GCF_002156645.1_ASM215664v1_genomic.fna rvazquez@200.23.162.231:/home/rvazquez/ejercicios_linux/Ensambles/. ## Copiar archivos de la máquina del CIBNOR a mi laptop $ scp -r rvazquez@200.23.162.231:/home/rvazquez/ejercicios_linux/Ensambles/QUAST/* . # Para checar cuantos CPUS tiene la máquina: $ nproc --all ## Otro comando que también pueden explorar es “ln -s” ## ln - make links between files ## -s, --symbolic ## make symbolic links instead of hard links ## Con este comando (ln -s) se crean ligas simbólicas que permiten acceder a archivos ## que están fuera de nuestra carpeta si tener que dar toda la ruta del directorio. Esto es ## muy común para correr programas. Los programas, generalmente se concentran en ## una carpeta y para correrlos, se han generado ligas simbólicas que permiten correr el ## comando sin tener que dar la ruta de su lugar de origen. ### Anotación del genoma ensamblado con el ### https://github.com/tseemann/prokka # Choose the names of the output files # $ prokka --outdir mydir --prefix mygenome contigs.fa $ perl5.22.1 ~/../../opt/prokka/bin/prokka --outdir Lj0a5 –prefix Lj0 Lja5.contigs.fasta ### Busqueda de una proteína de interés, corriendo un alineamiento local. ### Elaboración de una base de datos $ mkdir BLASTP $ cd BLASTP/ $ makeblastdb -in ../PROKKA_06222022.faa -dbtype prot -out LjOa5 -title Mi_primer_Protein_db $ ls #Creando la proteína de interés $ head ../PROKKA_06222022.faa > Miproteina.faa Corriendo el alineamiento local, con resultados tabulares $ blastp -query Miproteina.faa -db LjOa5 -out Results_file.tsv -outfmt 6 $ blastp -query Miproteina.faa -db LjOa5 -out Results_file7.tsv -outfmt 7