27 de abril de 2026

Notas de la 3ª asamblea general de la conexiónBCB del CSIC

Hola, comparto aquí mis notas de algunas charlas que escuché en la asamblea de la conexiónBCB los días 21 y 22 de abril en Madrid.
 
Francesc Montardit (Chesco) habló sobre sus progresos en "Genomic footprint of olive 
orchard management on a plant groundcover", todavía sin publicar.
 
mediante redes convolucionales.
 
Pablo Herrera Nieto (CNB-CSIC) está diseñando y evaluando complejos de proteínas: 
 
Fabian Jetzinger (I2SYSBIO) explica su trabajo prepublicado con long reads en torno al 
problema de unir o no diferentes muestras antes de definir isoformas (join, call [more novelty] vs 
call, join [less novelty, more conservative]). Ven diferentes comportamientos con diferentes 
herramientas (IsoQuant, FLAIR) que creen se deben a umbrales relativos a la expresión total 
de un experimento. Recomienda join & call con FLAIR antes de lanzarse a estudiar nuevas 
isoformas raras.
 
Juan Martín Menor de Gaspar (CBGP-INIA) habla de multiomic integration en programas de 
mejora a largo plazo donde se imputan datos perdidos, en concreto missing covariances entre 
indivíduos en base a su pedigrí [covcomb], antes de hacer GS. 
 
Julen Santiago presenta "Development of an LLM and Retrieval Augmented Arch (RAG)-based 
Conversational Assistant for the Conexión BCB Platform" with https://weaviate.io para construir 
un knowledge graph e inmersiones especializadas (S-BioBERT) para calcular distancias. Para 
validar preparan un conjunto de consultas y respuestas correctas. Le preguntan si ha probado 
si el sistema alucina, pidiéndole cosas imposibles, y si está suficientemente protegida la 
privacidad de los datos. 
 
Carlos O Sorzano (CNB) habla de su trabajo con cryoEM y hetSIREN 
 
Isabel Díaz (adjunta VRI) nos recuerda que aprovechemos los correos de programas 
internacionales del CSIC para presionar y conseguir topics en futuras convocatorias. 57% 
tecnológicas (para escalar y llevar al mercado):
 
 
Enrique Bernal Delgado (IACS) habla de la European Open Science Cloud y ciencia abierta. 
Es epidemiólogo y del board of directors de EOSC-A. Pilota la propuesta ES para un nodo 
propio en  EOSC.   
 
Rocío Tuda, oficina del dato del CSIC, SGAI presenta sabio.csic.es , haya, pino, caoba y 
resume la estrategia del dato, que también incluye a https://digital.csic.es
 
Manuel Ferrer (ICP) presenta la conexión microbioma y habla de la brecha entre recursos 
genómicos de microbios y recursos biológicos (muestras, ecosistemas; muy por detrás).
 
Jesús Cerquides presenta https://aihub.csic.es y habla de algunos hitos muy recientes de la IA, 
como el benchmark BioAgent, y la tendencia a pensar que los científicos dejaremos de hacer 
ciencia y pasaremos a supervisarla, apoyándose en experiencias como ésta, donde un sistema
IA envío un abstract a un congreso que fue aceptado.  Resume el impacto que está teniendo 
ya la IA en la biología computacional y la ciencia en general:
 
Le dedica un tiempo a hablar del impacto inmediato del copilotaje en programación:
 
Nos propone una agenda en torno a esto para la conexión BCB:
 

Hasta pronto, Bruno 

 

17 de abril de 2026

Lecturas con SEQ y QUAL de diferente longitud en FASTQ

Hola, si alguna vez te encuentras un mensaje como éste:

[E::sam_parse1] SEQ and QUAL are of different length

Se debe a que el fichero FASTQ en cuestión contiene líneas de secuencia (SEQ) y calidad (QUAL) de diferente longitud, lo cual viola el formato y es posiblemente un error. El siguiente oneliner te sirve para encontrar las secuencias problemáticas:

$ zcat file.fastq.gz | perl -lne 'if($.%4==1){$n=$_}elsif($.%4==2){$l=length($_)}elsif($.%4==0){print $n if(length($_) != $l)}' > lista.errores.txt

Luego puedes eliminar las secuencias del fichero FASTQ como se explica por ejemplo aquí con seqtk, hasta luego,

Bruno 

31 de marzo de 2026

Obtén taxonomías del NCBI desde el terminal

Hola, en una entrada anterior comentaba cómo aprendimos a descargar datos del NCBI desde el terminal, usando el binario datasets, en mi caso para Linux. 

Hoy os cuento cómo se puede utilizar para obtener de manera sencilla la taxonomía completa correspondiente a un taxonID, como los que utiliza la base de datos https://www.ncbi.nlm.nih.gov/taxonomy . Lo explico con un ejemplo, buscando en dicho portal la primera especie que se me ocurre:

  • Deduzco que el taxonID de esta especie es el 56046
  • Invoco el binario datasets con este identificador, obteniendo resultados en formato JSON:
       $ datasets summary taxonomy taxon 56046
 
{"reports": [{"query":["56046"],"taxonomy":{"children":[928733,928732,928731],"classification":{"class":{"id":58019,"name":"Pinopsida"},"domain":{"id":2759,"name":"Eukaryota"},"family":{"id":3318,"name":"Pinaceae"},"genus":{"id":3319,"name":"Abies"},"kingdom":{"id":33090,"name":"Viridiplantae"},"order":{"id":1446380,"name":"Pinales"},"phylum":{"id":35493,"name":"Streptophyta"},"species":{"id":56046,"name":"Abies pinsapo"}},"curator_common_name":"Spanish fir","current_scientific_name":{"authority":"Boiss., 1838","name":"Abies pinsapo"},"current_scientific_name_is_formal":true,"genomic_moltype":"dsDNA","group_name":"seed plants","parents":[1,131567,2759,33090,35493,131221,3193,58023,78536,58024,1437180,58019,3313,2821352,1446380,3318,3319],"rank":"SPECIES","tax_id":56046}}],"total_count": 1}

Cuando nos interesa solamente un taxonID es realmente más cómodo hacerlo en la Web, como se ha explicado. Esta operación tiene más sentido en el terminal cuando queremos hacerlo para toda una lista. Por ejemplo, podemos hacer una búsqueda con BLASTN contra la colección core_nt, obteniendo el taxonID de cada resultado en la columna 13:

$ blastn -query test.fna -db core_nt -outfmt "6 std staxids" -out results.tsv 

Con un comando como el siguiente podemos repetir la llamada a datasets para ese fichero:

$ perl -lane 'foreach $i (split(";",$F[12])){ $t=$see{$i}||`datasets summary taxonomy taxon $i`; printf("%s\t%s\t\%s",$F[0],$i,$t); $see{$i}=$t }' results.tsv

Hasta pronto, Bruno 

 

4 de marzo de 2026

footprintDB March 2026 version

Hi, we just updated the motifs, transcription factors and sites in the database footprintDB
This version adds:
 
1)  Motifs inferred from  protein-DNA complexes at the Protein Data Bank, added to 3d-footprint by 19/08/2025; note the complexes are also used to annotate interface residues  of all transcription factors (TFs).
 
2) New plant data at EEADannot, with TFs assigned to Plant-TFClass families (see repo).
The current contents include:

 

The footprintDB motifs have also been synced with RSAT (see repo), see you soon,
Bruno

 

18 de febrero de 2026

IV Jornada de Bioinformática en Aragón

Hola, el 13 de febrero la USJ organizó otro año más la Jornada de Bioinformática en Aragón, esta vez al mando de Paula Esquivias. Esta vez fuimos varias personas del grupo, entre ellos Rubén Sancho, que dió la charla plenaria con la que cerró el evento. Aquí van mis notas.

  

En sus estudios de múltiples taxones de plantas, el grupo de Aureliano Bombarely  ha encontrado que https://github.com/xjtu-omics/ANNEVO es un anotador genómico de novo, de esos que mapea secuencias de proteína conocidas sobre genomas sin anotar, que generaliza bien con proteínas de hasta 80M años de distancia dentro de Brassicáceas, pero en cambio falla en helechos. Un anotador basado en evidencias como BRAKER3 va mejor en este caso.

Continuando trabajos como https://doi.org/10.1093/molbev/msaf148, están usando FANTASIA en plantas, subiendo el % de proteínas con algún término GO asignado del 80% al 99% en Arabidopsis thaliana. Explica ejemplos de alucinación porque la versión actual de FANTASIA siempre te asigna algún GO.

Menciona al final un estudio del efecto de los transposones en la domesticación del arroz (https://doi.org/10.1016/j.xplc.2021.100270) que usa https://github.com/yanhaidong1/TEmarker.

En la mesa redonda de mujeres en bioinformática, Fátima Al-Shahrour, Rebeca Sanz-Pamplona, mi compañera Inmaculada YruelaAna Conesa nos entretuvieron contando detalles de sus trayectorias personales en la ciencia y lo que habían disfrutado haciendo formación y divulgación de sus trabajos por todos los rincones del mundo. Terminaron recordando a los más jóvenes la necesidad de poner la pregunta científica antes que los métodos.

 

Antes del café conocimos algunas empresas e instituciones locales como biamics.es (sede en Zaragoza), ita.es (da soporte a empresas,  4 ramas, la más cercana es tech digital con 80 personas) u origen.bio/origen-genetics (genomas personales para personalizar salud y nutrición).

En la mesa one health,  Luis Mata, Enrique Navarro,  Sarah Delacour y Laura Espina hablaron de los problemas a los que se enfrentan empresas y administraciones a la hora de compartir y gestionar datos de investigación en un marco de confianza. Las empresas tienen derecho a los datos públicos, pero son reacias a hacer públicos según qué datos porque les pueden causar daños de imagen pública, deben anoninimizarse. 

La jornada terminó con la charla magistral de Rubén Sancho, actualmente postdoc en nuestro departamento, titulada "Herramientas bioinformáticas aplicadas a estudios evolutivos y mejora genética en plantas", donde resumió más de 10 años de trabajo descifrando las relaciones evolutivas entre especies del genéro Brachypodium (modelo para cereales) y sus firmas transcripcionales en estrés hídrico, mostrando al final trabajos más recientes en cebada. Entre las herramientas que desarrolló explicó con cierto detalle chloroplast_assembly_protocol (ya superado por otras herramientas), phyloSD y AlloSHP. La siguiente figura, tomada de la charla de Rubén, muestra las tripas de AlloSHP (10.1186/s13007-025-01458-6) y cómo partiendo de mapeos de lecturas en genomas de diploides podemos llegar a SHPs, Single Homeologous Polymorphisms, que permiten estudiar la evolución de subgenomas en especies poliploides:  

Los artículos los podéis encontrar en scholar.


19 de enero de 2026

adiós a Peer Bork

Hola, igual esta semana habéis leído por ahí que nos dejaba Peer Bork, que era actualmente unos de los directores interinos del EMBL. Yo me enteré por una nota de prensa, de la que saqué la foto que pego más abajo. En las redes podéis leer testimonios de sus colegas, como en este hilo. Sí vale la pena recordar que fue uno de los integrantes del famoso grupo de Chris Sander en el EMBL, por el que pasaron muchos pioneros de la biología computacional, como por ejemplo Alfonso Valencia.

Yo no le conocí personalmente, pero le escuché en alguna conferencia y sobre todo me encontré con regularidad con artículos y recursos importantes que producía su grupo y que han sido muy importantes para la comunidad. Enumero aquí algunos de ellos por si no los conocíais, podéis ver la lista completa de publicaciones en scholar:

Portait photo of Peer Bork.
https://www.embl.org/news/embl-announcements/in-remembrance-of-peer-bork

 

Descansa en paz, y un abrazo a los heridas y familias del descarrilamiento 😢

8 de enero de 2026

NCBI Blast 2.17.0+ es más rápido y acepta FASTAs comprimidos

ola de nuevo.

Siguiendo con la serie de entradas sobre BLAST en este blog, hoy os comento que mientras actualizaba el código de https://github.com/eead-csic-compbio/get_homologues he descubierto que había una versión de NCBI Blast, la 2.17.0+, publicada el pasado verano. 

Revisando la lista de cambios respecto a la versión anterior me llamaron la atención estos dos:

  1. makeblastdb supports compressed in gzip, bzip2, and zstd formats
  2. Improved search speed of blastp with -task blastp-fast

La primera resuelve un problema que me ha afectado muchas veces, y evita que tengas que descomprimir un fichero FASTA de gran tamaño antes de indexar un conjunto de secuencias, una operación que a veces tarda mucho tiempo.

La segunda, que en realidad se estrenó en la versión 2.2.30+, permite acelerar las búsquedas con blastp, blastx y tblastn. Según los autores, acelera las búsquedas contra la colección no redundante de proteínas (nr) un 20%, siendo 2-3x más rápido con colecciones más pequeñas como swissprot o pdbaa. Para blastp y blastx se pierde un 3% de sensibilidad.

Hice una prueba rápida en mi máquina:

time ncbi-blast-2.17.0+/bin/blastp -task blastp-fast -query fnr.faa \
	-db sprot.fasta -outfmt 6 > f

real    0m1.113s
user    0m0.713s
sys    0m0.028s

time ncbi-blast-2.17.0+/bin/blastp -task blastp -query fnr.faa \
	-db sprot.fasta -outfmt 6 > s

real    0m3.945s
user    0m2.925s
sys    0m0.040s

wc -l s f
  113 s
   32 f

diff <(head -30 s) <(head -30 f)

Observo que los primeros 30 resultados son idénticos en ambas búsquedas, y que la estrategia -task blastp en este caso es mucho más sensible, produciendo 81 alineamientos más, todos ellos cortos y con identidades bajas. Si no necesitas estos últimos -task blastp-fastp es para ti.

Hasta pronto,

Bruno

7 de enero de 2026

Parecidos ocultos entre proteínas revelados por inmersión

Hola de nuevo, y feliz año. En la primera entrada del año quería compartir una reseña que me he encontrado en https://doi.org/10.1073/pnas.2524802122 y que me ha recordado que en las JBI2025 me perdí la charla de Ana Rojas, donde creo que habló de este tema. Se resume en la siguiente figura:

A three-panel figure shows protein language model embeddings, site-by-site approach, and sequence and embedding space.
Detección de convergencia molecular usando inmersiones de modelos de lenguaje proteico, tomada de https://doi.org/10.1073/pnas.2524802122.

En el diagrama se explica cómo un modelo de lenguaje proteico (PLM), entrenado en grandes conjuntos de secuencias de aminoácidos para predecir letras enmascaradas, permiten calcular inmersiones o embeddings para cada posición de una secuencia. Éstos son vectores multidimensionales que capturan información sobre la evolución de cada posición de la secuencia y que finalmente se pueden usar para calcular distancias o similitudes entre proteínas. Lo interesante es que permiten ir más allá que los métodos convenciones de construcción de perfiles, como PSI-BLAST o HMMER, puesto que pueden encontrar huellas de convergencia indetectables por éstos (homólogos de murciélago y ballena en la figura, hay más ejemplos en artículo completo).

NOTA: sobre la traducción de embedding por parte de un matemático (Carlos Castro): "Es una inmersión. Se usa para representar un conjunto que puede verse como parte de otro. Se dice que hay una inmersión del conjunto pequeño en el grande.".