8 de marzo de 2022

CRISPR-Cas9 reloaded

Hola,

a pesar  de que lamentablemente la guerra sigue en Ucrania, hoy continuamos el marcaje que hacemos desde este blog a las enzimas Cas9 y las secuencias CRISPR (ver por ejemplo esta entrada), porque la actualidad nos ha traído novedades. Pero vayamos por partes.

La primera novedad es un trabajo de ingeniería de proteínas (publicado en https://doi.org/10.1038/s41586-022-04470-1) donde los autores avanzan en la comprensión del mecanismo de corte de la enzima Cas9 (Figura 1) y lo aprovechan para hacer una mutagénesis dirigida donde reemplazan algunos aminoácidos para que dejen de estabilizar los nucleótidos 18-20 del ADN diana en caso de no aparear (Figura 2) y sin afectar a la velocidad de la reacción de las secuencias apareadas:

figure 5

Figura 1. Modelo para la activación de la enzima Cas 9 tomado de https://doi.org/10.1038/s41586-022-04470-1.


 

Figura 2. Esquema del complejo PAM-distal gRNA–TS con moléculas de agua como círculos rojos. Los aminoácidos que contactan con los nucleótidos C18, A19 y G20 fueron mutados para comprobar su efecto en el corte de la secuencia diana. Las curvas muestran estudios de la dinámica de la reacción enzimática de corte de la Cas9 comparando moléculas guía que aparean (On-target) con moléculas que contienen mismatches (MM, Off-target) en las posiciones 18-20.  Adaptada de https://doi.org/10.1038/s41586-022-04470-1.

Qué significa esto? Pues que esta versión de Cas9 (SuperFi-Cas9) tiene mayor fidelidad y es un paso adelante en la dirección de conseguir enzimas que no corten donde no se esperaban cortes.


La segunda novedad es que en la batalla legal por los derechos de explotación de las tecnologías CRISPR parece de momento ha ganado la Universidad de Harvard, como podéis leer por ejemplo en https://www.technologynetworks.com/genomics/news/broad-institute-wins-crispr-patent-case-359160 . Ya veremos que consecuencias tiene esto para el uso de las tecnologías Cas9 en ciencia, pero vemos que si los premios Nobel dejaron fuera a algunos investigadoes clave como Francis Mójica (ver por ejemplo esto), ahora la guerra de las patentes deja fuera a las investigadoras que ganaron el Nobel por este trabajo!

Hasta pronto,

Bruno


28 de febrero de 2022

diagramas de flujo y Gantt en Markdown

Hola,

iba a decir buenos días, pero lamentablemente seguimos pendientes de la invasión y resistencia en Ucrania; mejor lo dejo. Espero que sean buenos pronto.

Hoy solamente quería compartir un hallazgo reciente sobre cómo crear diagramas de flujo en Markdown. A mi me resulta especialmente útil en un repositorio GitHub, porque es donde más Markdown escribo para documentar código y datos, y además sin instalar nada. En concreto, la librería js mermaid está ya satisfecha de antemano en GitHub.

 

 Para que veáis qué fácil es pongo como ejemplo el siguiente diagrama, que podéis ver en https://raw.githubusercontent.com/eead-csic-compbio/eead-csic-compbio.github.io/master/README.md :

```mermaid
  graph TD;
      github-->repositories;
      github-->github.io
      github.io-->scripts;
      github.io-->data;
      github.io-->compbio/md;
```

O ya ejecutado en https://github.com/eead-csic-compbio/eead-csic-compbio.github.io :

 Además de diagramas de flujo, otro tipo de diagrama que encuentro muy útil es el diagrama de Gannt, para organizar tareas en el tiempo, por ejemplo en un proyecto:


```mermaid
gantt
dateFormat  YYYY-MM-DD
title Diagrama de GANTT con mermaid

section Sección A
Tarea finalizada       :done,    des1, 2014-01-06,2014-01-08

Tarea en marcha            :active,  des2, 2014-01-09, 3d
Tarea futura1                :         des3, after des2, 5d
Tarea futura2               :         des4, after des3, 5d
```

Hasta pronto,

Bruno

 

 


2 de febrero de 2022

Aplicaciones y limitaciones de AlphaFold2

Hola,

han pasado ya más de 6 meses desde que hablamos aquí de AlphaFold2 (si os fijáis en los comentarios fui pegando artículos relacionados), y entre tanto he ido descubriendo aplicaciones interesantes y una limitación importante. Aquí hablo muy brevemente de ellas.

1. Búsqueda de plegamientos parecidos. Si tienes una estructura o tal vez un modelo de una proteína y quieres saber a qué estructuras conocidas se parece, incluyendo las predicciones de AlphaFold2, puedes hacerlo pegando sus coordenadas en formato PDB en https://search.foldseek.com/search


2. Predicción de resíduos de proteínas que interaccionan con ADN. El algoritmo GraphSite (https://biomed.nscc-gz.cn/apps/GraphSite) es capaz de predecir resíduos de la interfaz proteína-DNA con mayor precisión que cualquier otro método probado en https://doi.org/10.1093/bib/bbab564


3. AlphaFold2 sobreestima el plegamiento de proteínas cortas. En una evaluación reciente contra la colección AntiFam , que contiene proteínas que se cree son errores de anotación, se ha observado que AlphaFold2 tiene una pequeña tendencia (6/131) a dar puntuaciones altas (pLDDT > 80) a secuencias menores de 100 resíduos. Hasta que sepamos más es buena idea ser especialmente cauteloso con secuencias cortas.


Hasta pronto,

Bruno

 

24 de enero de 2022

nuevo modo paralelo en BLAST+ 2.12.0

Hola,

BLAST+ es una de las pocas herramientas esenciales para cualquier persona que haga biología computacional, todos la hemos usado alguna vez. Simplificando, creo que el secreto es que hace una sola cosa (alinear localmente secuencias) y la hace bien. Eso, y que BLAST evoluciona, y de vez en cuando introduce novedades interesantes, que podemos repasar en las notas de publicación periódicas disponibles en https://www.ncbi.nlm.nih.gov/books/NBK131777

La versión 2.12.0 (28 de junio de 2021) incluye un nuevo modo de paralelización por lotes de secuencias input que beneficia entre otros a los algoritmos clásicos BLASTN, BLASTP y BLASTX. Los detalles puedes verlos en  https://www.ncbi.nlm.nih.gov/books/NBK571452 , aquí comparto un ejemplo de invocación, que requiere el argumento -mt_mode 1:

 
$ blastp –db swissprot -query BIGFASTA.fsa –out test.out -num_threads 32 -mt_mode 1


La siguiente figura muestra la ganancia en tiempo de cálculo en función del número de cores y hebras empleado:

Image ckbk_ThreadByQuery-Image001.jpg


Espero que os sea útil, hasta pronto,

Bruno

17 de enero de 2022

Get data from Ensembl Plants with scripts

Hi, I hope you are all well and healthy amidst the current COVID outbreak.

As we are back to business I would like to talk today about a recipe book to extract data from the genomic database Ensembl Plants from your own scripts. While Ensembl is primarily an interactive browser, some users might want to extract data from different species in one go, or perhaps some specific annotations for a complete chromosome. These recipes would allow to do just that, and make good use of the variety of entry points available at Ensembl: API (A), Biomart (B), FTP (F), SQL (S), REST (R), and Ensembl VEP (V). 

An Open Acess chapter which covers this topic has just been published at https://link.springer.com/protocol/10.1007%2F978-1-0716-2067-0_2 

The current recipes include:

## A1) Load the Registry object with details of genomes available
## A2) Check which analyses are available for a species
## A3) Get soft masked sequences from Arabidopsis thaliana
## A4) Get BED file with repeats in chr4
## A5) Find the DEAR3 gene
## A6) Get the transcript used in Compara analyses
## A7) Find all orthologues of a gene
## A8) Get markers mapped on chr1D of bread wheat
## A9) Find all syntelogues among rices
## A10) Print all translations for otherfeatures genes

## B1) Check plant marts and select dataset
## B2) Check available filters and attributes
## B3) Download GO terms associated to genes
## B4) Get Pfam domains annotated in genes
## B5) Get SNP consequences from a selected variation source

## C1) Find RNA-seq CRAM files for a genome assembly

## F1) Download peptide sequences in FASTA format
## F2) Download CDS nucleotide sequences in FASTA format
## F3) Download transcripts (cDNA) in FASTA format
## F4) Download soft-masked genomic sequences
## F5) Upstream/downstream sequences
## F6) Get mappings to UniProt proteins
## F7) Get indexed, bgzipped VCF file with variants mapped
## F8) Get precomputed VEP cache files
## F9) Download all homologies in a single TSV file, several GBs
## F10) Download UniProt report of Ensembl Plants, 
## F11) Retrieve list of new species in current release
## F12) Get current plant species tree (cladogram)

## S1) Check currently supported Ensembl Genomes (EG) core schemas,
## S2) Count protein-coding genes of a particular species
## S3) Get stable_ids of transcripts used in Compara analyses 
## S4) Get variants significantly associated to phenotypes
## S5) Get Triticum aestivum homeologous genes across A,B & D subgenomes
## S6) Count the number of whole-genome alignments of all genomes 
## S7) Extract all the mutations and consequences for a selected wheat line
## S8) Get FASTA of repeated sequences from selected species
## S9) Get GFF of repeated sequences from selected species

## R1) Create a HTTP client and a helper functions 
## R2) Get metadata for all plant species 
## R3) Find features overlapping genomic region
## R4) Fetch phenotypes overlapping genomic region
## R5) Find homologues of selected gene
## R6) Get annotation of orthologous genes/proteins
## R7) Fetch variant consequences for multiple variant ids
## R8) Check consequences of SNP within CDS sequence
## R9) Retrieve variation sources of a species
## R10) Get soft-masked upstream sequence of gene in otherfeatures track
## R11) Get all species under a given taxonomy clade
## R12) transfer coordinates across genome alignments between species

## V1) Download, install and update VEP
## V2) Unpack downloaded cache file & check SIFT support 
## V3) Predict effect of variants 
## V4) Predict effect of variants for species not in Ensembl

The recipes are written in different scripting languages (Python, R, Perl, Bash) and can be cloned from https://github.com/Ensembl/plant-scripts . Moreover, you can fork the repo and suggest new recipes with a pull request.

Have a great week,

Bruno