{"id":1713,"date":"2024-01-18T12:41:06","date_gmt":"2024-01-18T10:41:06","guid":{"rendered":"https:\/\/bioinfo2.ugr.es\/bioinfo\/?page_id=1713"},"modified":"2026-02-08T13:22:14","modified_gmt":"2026-02-08T11:22:14","slug":"anotar-un-ensamblado-de-novo","status":"publish","type":"page","link":"https:\/\/bioinfo2.ugr.es\/bioinfo\/anotar-un-ensamblado-de-novo\/","title":{"rendered":"Analizar un ensamblado de-novo"},"content":{"rendered":"\n<p>Cada estudiante dispone de un genoma ensamblado mediante el programa <a href=\"https:\/\/github.com\/ablab\/spades\" target=\"_blank\" rel=\"noopener\">Spades<\/a><\/p>\n<p>(vease&nbsp;<a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/anotacion-de-un-genoma-bacteriano\/\">Ensamblando un genoma<\/a> para mas informaci\u00f3n)<\/p>\n<p>&nbsp;<\/p>\n<h2>Objetivos:<\/h2>\n<ul>\n<li>Determinar la calidad del ensamblado<\/li>\n<li>Determinar la especie (cepa)<\/li>\n<li>Predecir todos los genes codificantes<\/li>\n<li>Anotar los genes predichos<\/li>\n<li>Determinar la presencia de ciertos genes que provocan resitencia a anitbiotiocos<\/li>\n<\/ul>\n<h2>Calidad del ensamblado<\/h2>\n<h3>N\u00famero de contigs<\/h3>\n<p>Paso1: filtrar las lineas que contiene &#8216;&gt;&#8217;<\/p>\n<pre>grep '&gt;' \/opt\/bioinfo_genomas\/14.fa<\/pre>\n<p>Paso2: contar el n\u00famero de lineas<\/p>\n<pre>wc -l 14.fa<\/pre>\n<p>Paso3: juntar los dos comandos<\/p>\n<pre>grep '&gt;' \/opt\/bioinfo_genomas\/14.fa | wc -l <\/pre>\n<h3>N\u00famero de contigs m\u00e1s largos que un umbral dado<\/h3>\n<p>contigs m\u00e1s largos que <strong>1000nt<\/strong><\/p>\n<pre>awk -v RS='&gt;' '{ split($0,f,\"_\"); if (f[4] &gt; <strong>1000<\/strong>) print \"&gt;\" $0; }' a14.fa <\/pre>\n<p>reenviar la salida a pantalla a un fichero (mediant el operados <strong>&gt;<\/strong>):<\/p>\n<pre>awk -v RS='&gt;' '{ split($0,f,\"_\"); if (f[4] &gt; <strong>1000<\/strong>) print \"&gt;\" $0; }' a14.fa <strong>&gt;<\/strong> a14_1000.fa<\/pre>\n<p><strong>\u00bfQue es awk?<\/strong><\/p>\n<p style=\"text-align: right;\"><em>&#8220;Dentro de las herramientas del sistema UNIX awk es equivalente a una navaja del ejercito suizo, que es \u00fatil para modificar archivos, buscar y tranformar bases de datos, generare informes simples y otras muchas cosas.&#8221;<\/em><\/p>\n\n\n\n<p style=\"text-align: right;\">Jes\u00fas Alberto Vidal Cort\u00e9s, <br><a href=\"https:\/\/congresos.nnb.unam.mx\/TIB2014\/sites\/default\/files\/TIB2014\/manual_awk.pdf\" target=\"_blank\" rel=\"noopener\">Introducci\u00f3n en awk<\/a><\/p>\n\n\n\n<p>desglose del comando:<\/p>\n\n\n\n<table style=\"height: 520px; width: 100%; border-collapse: collapse;\" border=\"1\">\n<tbody>\n<tr style=\"height: 23px;\">\n<td style=\"width: 24.7619%; height: 23px;\">-v RS=&#8217;&gt;&#8217;<\/td>\n<td style=\"width: 75.2381%; height: 23px;\">se lee la entrada en bloques comprendidos entre el caracter &#8216;&gt;&#8217;<\/td>\n<\/tr>\n<tr style=\"height: 46px;\">\n<td style=\"width: 24.7619%; height: 46px;\">$0<\/td>\n<td style=\"width: 75.2381%; height: 46px;\">la variable que contiene la informaci\u00f3n del bloque (String &#8211; cadena de caracteres). En este caso, el encabezado (menos la &#8216;&gt;&#8217;) y la secuencia<\/td>\n<\/tr>\n<tr style=\"height: 363px;\">\n<td style=\"width: 24.7619%; height: 283px;\">split($0,f,&#8221;_&#8221;)<\/td>\n<td style=\"width: 75.2381%; height: 283px;\">\n<p>NODE_244_length_1010_cov_1.952840<\/p>\n<p>Cortar la cadena de caracteres en un patron dado, &#8216;_&#8217; en este caso. El resultado es una lista con las subcadenas accesibles a traves de diferentes indices<\/p>\n<ul>\n<li>1-&gt; NODE<\/li>\n<li>2 -&gt; 244<\/li>\n<li>3 -&gt; length<\/li>\n<li>4 -&gt; 1010<\/li>\n<li>5 -&gt; cov<\/li>\n<li>6 -&gt; 1.952840 (y toda la secuencia)<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr style=\"height: 100px;\">\n<td style=\"width: 24.7619%; height: 100px;\">print <span style=\"color: #ff0000;\">&#8220;&gt;&#8221; $0<\/span>;<\/td>\n<td style=\"width: 75.2381%; height: 100px;\">\n<p>print escribe&nbsp; una cadena de caracteres en la pantalla. En este caso, la cadena consiste en juntando &#8216;&gt;&#8217; con lo almazenado en $0<\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 68px;\">\n<td style=\"width: 24.7619%; height: 68px;\"><strong>&gt;<\/strong> 26_1000.fa<\/td>\n<td style=\"width: 75.2381%; height: 68px;\">\n<p>redirigir la salida a pantalla a un fichero<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n\n\n\n<p>\u00a0<\/p>\n<h2>Cuestiones<\/h2>\n<ul id=\"block-838bd00e-d0c3-4c5e-9466-66c952e678c4\" class=\"block-editor-rich-text__editable block-editor-block-list__block wp-block is-selected wp-block-list rich-text\" tabindex=\"0\" role=\"document\" contenteditable=\"true\" aria-multiline=\"true\" aria-label=\"Block: List\" data-block=\"838bd00e-d0c3-4c5e-9466-66c952e678c4\" data-type=\"core\/list\" data-title=\"List\">\n<li>\u00bfComo podemos obtener todas las longitudes en la salida?<\/li>\n<li>\u00bfComo podemos extraer una secuencia (scaffold) en formato fasta?<\/li>\n<li>Analizar la variaci\u00f3n en el G+C a lo largo del contig mas largo<\/li>\n<li>\u00bfPodemos determinar el orden real de los contigs en el genoma?<\/li>\n<\/ul>\n<h2>Determinar los genes codificantes<\/h2>\n<p>La anotaci\u00f3n de genes codificantes se basa en la <a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/prediccion-de-genes\/\">predicci\u00f3n de genes<\/a> en procariotas que carecen de intrones<\/p>\n<p>Primero usaremos <a href=\"http:\/\/exon.gatech.edu\/GeneMark\/genemarks2.cgi\" target=\"_blank\" rel=\"noopener\">GeneMarkS-2<\/a> para predecir los genes un el ensamblado mediante el fichero con contigs &gt;= 1000nt<\/p>\n<p>Marcamos las opciones como en la siguiente imagen:<\/p>\n<p><a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/genemarks-2.png\"><img loading=\"lazy\" class=\"wp-image-1737 aligncenter\" src=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/genemarks-2-300x242.png\" alt=\"\" width=\"421\" height=\"340\" srcset=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/genemarks-2-300x242.png 300w, https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/genemarks-2-768x620.png 768w, https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/genemarks-2.png 781w\" sizes=\"(max-width: 421px) 100vw, 421px\" \/><\/a><\/p>\n<p>Obtenemos 3 ficheros de salida:<\/p>\n<ul>\n<li>la anotaci\u00f3n de las regiones CDS en formato gff3<\/li>\n<li>Las secuencias de las regiones codificantes<\/li>\n<li>Las CDSs traducidas<\/li>\n<\/ul>\n<p style=\"text-align: center;\"><a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/genemark_out.png\"><img loading=\"lazy\" class=\"alignnone size-medium wp-image-1739\" src=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/genemark_out-300x142.png\" alt=\"\" width=\"300\" height=\"142\" srcset=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/genemark_out-300x142.png 300w, https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/genemark_out.png 759w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>\u00a0<\/p>\n<h2>Anotar los genes predichos<\/h2>\n<p>Existen diferentes programas:<\/p>\n<ul>\n<li class=\"c-article-title\" data-test=\"article-title\">MicrobeAnnotator: <a href=\"https:\/\/bmcbioinformatics.biomedcentral.com\/articles\/10.1186\/s12859-020-03940-5\" target=\"_blank\" rel=\"noopener\">publicaci\u00f3n<\/a>, <a href=\"https:\/\/github.com\/cruizperez\/MicrobeAnnotator\" target=\"_blank\" rel=\"noopener\">github<\/a><\/li>\n<li data-test=\"article-title\">blastkoala: <a href=\"https:\/\/www.sciencedirect.com\/science\/article\/pii\/S002228361500649X\" target=\"_blank\" rel=\"noopener\">publicaci\u00f3n<\/a>, <a href=\"https:\/\/www.kegg.jp\/blastkoala\/\" target=\"_blank\" rel=\"noopener\">herramienta<\/a><\/li>\n<li data-test=\"article-title\"><a href=\"https:\/\/www.kegg.jp\/tool-bin\/blastkoala_result?id=3fa59cf6d324acdc4e78097a07280cddaa4c9785&amp;passwd=Rv0tVM&amp;type=blastkoala\" target=\"_blank\" rel=\"noopener\">Ejemplo de salida<\/a><\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<p>Usaremos el programa <a href=\"https:\/\/www.kegg.jp\/blastkoala\/\" target=\"_blank\" rel=\"noopener\">blastkoala<\/a> que emplea Blast para asignar la secuencia del gen predicho (an\u00f3nima) a una secuencia de la base de datos KEGG.<\/p>\n<h3>Analizar la salida del blastkoala<\/h3>\n<ul>\n<li>Determinar el % de genes predichos asingados a una entrada de KEGG<\/li>\n<li>\u00bfEs posible asignar genes predichos sin entrada en KEGG mediante Blast?<\/li>\n<\/ul>\n<h3>Cuestiones<\/h3>\n<p>\u00bfComo podemos &#8216;mejorar&#8217; la tasa de genes asignados?<\/p>\n<h3>Soluci\u00f3n<\/h3>\n<ul>\n<li>Intentar usar Blast con la base de datos nr<\/li>\n<\/ul>\n<h3>Problema:<\/h3>\n<ul>\n<li>Mediante el servicio web del Blast tendr\u00edamos que enviar cientos de secuencias manualmente, lo cual es inviable<\/li>\n<\/ul>\n<p><a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2026\/02\/Screenshot-2026-02-08-at-11.38.32.png\"><img loading=\"lazy\" class=\"alignnone  wp-image-1985\" src=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2026\/02\/Screenshot-2026-02-08-at-11.38.32-300x11.png\" alt=\"\" width=\"600\" height=\"22\" srcset=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2026\/02\/Screenshot-2026-02-08-at-11.38.32-300x11.png 300w, https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2026\/02\/Screenshot-2026-02-08-at-11.38.32-1024x37.png 1024w, https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2026\/02\/Screenshot-2026-02-08-at-11.38.32-768x28.png 768w, https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2026\/02\/Screenshot-2026-02-08-at-11.38.32-1536x55.png 1536w, https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2026\/02\/Screenshot-2026-02-08-at-11.38.32-2048x74.png 2048w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<h3>Soluci\u00f3n<\/h3>\n<p>Usar una versi\u00f3n local con una base de datos &#8216;<a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/customizar_base_de_datos\/\" target=\"_blank\" rel=\"noopener\">customizada<\/a>&#8216;<\/p>\n<ol>\n<li>Detectar la especie\/cepa mediant Blast<\/li>\n<li>Descargar las secuencias de la CDS y proteinas<\/li>\n<li>Generar la base de datos local<\/li>\n<li>Ejecutar una b\u00fasqueda local<\/li>\n<\/ol>\n<p>Resultados:<\/p>\n<ol>\n<li>\n<p>Un posible genoma de referencia podr\u00eda ser <a href=\"https:\/\/www.ncbi.nlm.nih.gov\/nucleotide\/CP047321.1?report=genbank&amp;log$=nucltop&amp;blast_rank=1&amp;RID=UMCBHR59016\" target=\"_blank\" rel=\"noopener\"><span class=\"highlight\">Staphylococcus aureus<\/span>\u00a0strain RJ1267<\/a><\/p>\n<\/li>\n<li>Send to &#8211;&gt; coding sequences &#8211;&gt; fichero&#8211;&gt; <strong>CP047321_RJ1267.txt<\/strong><a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/send-to.png\"><img loading=\"lazy\" class=\"size-medium wp-image-1755 aligncenter\" src=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/send-to-300x238.png\" alt=\"\" width=\"300\" height=\"238\" srcset=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/send-to-300x238.png 300w, https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-content\/uploads\/2024\/01\/send-to.png 417w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/li>\n<li>Usar el programa de EMBOSS transeq para traducir las CDS (o la opci\u00f3n de guardar los CDS como &#8216;FASTA Protein&#8217;)<\/li>\n<li>Generar la base de datos<\/li>\n<\/ol>\n<pre>makeblastdb -in CP047321_RJ1267.txt -parse_seqids -title \"CP047321_RJ1267\" -out CP047321_RJ1267 -dbtype nucl<br \/><br \/>makeblastdb -in CP047321_RJ1267_prot.txt -parse_seqids -title \"CP047321_RJ1267\" -out CP047321_RJ1267 -dbtype prot\u00a0<\/pre>\n<p><br \/>5. Ejecutar un Blast local<\/p>\n<p>Suponemos que la salida del GeneMarkS-2 se llama gms2_a26.faa (secuencias de aminoac\u00eddicas) y gms2_a26.fnn<\/p>\n<pre>blastp -query gms2_a26.faa -db CP047321_RJ1267 -max_target_seqs 1 -outfmt 6 -evalue 1E-5 -out gms2_a26_blastp.txt<br \/>blastn -query gms2_a26.fnn -db CP047321_RJ1267 -max_target_seqs 1 -outfmt 6 -perc_identity 90 -evalue 1E-10 -out gms2_a26_blastn.txt<\/pre>\n<p>V\u00e9ase la explicaci\u00f3n del <a href=\"https:\/\/www.metagenomics.wiki\/tools\/blast\/blastn-output-format-6\" target=\"_blank\" rel=\"noopener\">fichero de salida<\/a><\/p>\n<h4>Preguntas:<\/h4>\n<ul>\n<li>\u00bfCuantos genes predichos podemos anotar?<\/li>\n<li>Para cuantos genes predichos:\n<ul>\n<li>\u00bfLa anotaci\u00f3n y el gen predicho tienen igual longitud?<\/li>\n<li>\u00bfEl gen predicho alinea por encima del 90% (-qcov_hsp_perc)?<\/li>\n<\/ul>\n<\/li>\n<li>Explorar la salida: -outfmt &#8220;6 qseqid sseqid pident length mismatch gapopen qstart qend sstart send evalue bitscore qlen qcovs&#8221;<\/li>\n<li>\u00bfCuantos genes no hemos podido asignar?<\/li>\n<li>\u00bfComo podemos lograr que en la tabla de salida salga el nombre del gen?<\/li>\n<\/ul>\n<h3>Obtener una lista con genes predichos no asignados<\/h3>\n<div>Paso1: obtener una lista con los genes predichos:<\/div>\n<pre>grep '&gt;' gms2_a26.fnn | cut -f 1 -d ' ' | sed 's\/&gt;\/\/g' &gt; genes_predichos.txt<\/pre>\n<div>Paso2: obtener una lista con los genes asignados<\/div>\n<pre>cut -f 1 gms2_a26_blastn.txt &gt; genes_asignados.txt<\/pre>\n<div>Paso 3: comparar los dos listas<\/div>\n<pre>diff -y genes_predichos.txt genes_asignados.txt<\/pre>\n<h3>Detectar la presencia de genes de <a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/buscar-genes-conocidos-en-ensamblado\/\" target=\"_blank\" rel=\"noopener\">resistencia a antibioticos<\/a><\/h3>\n<p>\u00a0<\/p>\n<h3>Detectar genes no-codificantes<\/h3>\n<p>Una detecci\u00f3n exhaustiva podemos llevar a cabo mediante Infernal (v\u00e9ase <a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/prediccion-de-genes\/\" target=\"_blank\" rel=\"noopener\">predicci\u00f3n de genes<\/a>)\u00a0<\/p>\n<pre>cmscan --rfam --cut_ga --nohmmonly --tblout mrum-genome.tblout --fmt 2 --clanin \/home\/biocomp\/RFAM\/Rfam.clanin \/home\/biocomp\/RFAM\/Rfam.cm \/home\/biocomp\/bioinfo_genomas\/26_1000.fa<\/pre>\n<p><br \/>Pero tambien existe la posibilidad de buscar la secuencia, pero ejemplo del gen del ARN ribos\u00f3mico en el ensamblado<\/p>\n<h3>Otras cuestiones de inter\u00e9s<\/h3>\n<p>\u00bfComo de buena es la predicci\u00f3n de genes? \u2013&gt; bondad predicci\u00f3n de genes<br \/><br \/><\/p>\n<p>\u00a0<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cada estudiante dispone de un genoma ensamblado mediante el programa Spades (vease&nbsp;Ensamblando un genoma para mas informaci\u00f3n) &nbsp; Objetivos: Determinar la calidad del ensamblado Determinar la especie (cepa) Predecir todos los genes codificantes Anotar los genes predichos Determinar la presencia de ciertos genes que provocan resitencia a anitbiotiocos Calidad del ensamblado N\u00famero de contigs Paso1: &hellip; <a href=\"https:\/\/bioinfo2.ugr.es\/bioinfo\/anotar-un-ensamblado-de-novo\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-json\/wp\/v2\/pages\/1713"}],"collection":[{"href":"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-json\/wp\/v2\/comments?post=1713"}],"version-history":[{"count":47,"href":"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-json\/wp\/v2\/pages\/1713\/revisions"}],"predecessor-version":[{"id":1987,"href":"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-json\/wp\/v2\/pages\/1713\/revisions\/1987"}],"wp:attachment":[{"href":"https:\/\/bioinfo2.ugr.es\/bioinfo\/wp-json\/wp\/v2\/media?parent=1713"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}