14  Análisis de dominios con HMMER y Pfam

En este módulo aprenderás a identificar dominios conservados en proteínas utilizando la herramienta HMMER junto con la base de datos Pfam. Este enfoque se basa en Modelos Ocultos de Markov (HMM) y es especialmente útil para búsquedas locales en terminal.

14.1 📦 Preparación de la base de datos Pfam

Primero debes descargar y preparar la base de datos Pfam para búsquedas locales.

# Descargar la base de datos Pfam-A
wget ftp://ftp.ebi.ac.uk/pub/databases/Pfam/current_release/Pfam-A.hmm.gz

# Descomprimir el archivo
gunzip Pfam-A.hmm.gz

# Indexar la base de datos para su uso con HMMER
hmmpress Pfam-A.hmm

14.2 🔍 Búsqueda de dominios en una proteína específica

Realiza una búsqueda de todos los dominios presentes en una proteína individual (por ejemplo, P06780.fasta).

hmmscan --domtblout pfam_P06780.out Pfam-A.hmm P06780.fasta
  • El archivo pfam_P06780.out contiene los dominios encontrados en formato tabular.
  • Puedes filtrar por significancia usando herramientas como grep, awk o R.

14.3 🧬 Búsqueda de un dominio específico en múltiples secuencias

Supongamos que quieres buscar el dominio PF00071 en todas las secuencias de all_protein.fasta.

14.3.1 🧲 Extraer el modelo HMM del dominio de interés

hmmfetch Pfam-A.hmm PF00071.27 > PF00071.hmm

14.3.2 📜 Obtener el alineamiento en formato Stockholm (opcional)

Esto es útil si deseas reconstruir árboles o hacer perfiles propios.

awk "/PF00071.27/,/\/\// {print}" Pfam-A.seed > input/PF00071.sto

14.3.3 🔬 Buscar el dominio en todas las secuencias

hmmsearch --domtblout PF00071_hmmer.out PF00071.hmm all_protein.fasta
  • El resultado en PF00071_hmmer.out mostrará todas las secuencias que contienen el dominio.
  • Puedes procesarlo con seqkit, cut, awk, o cargarlo en R para un análisis más detallado.

14.4 📘 Nota

  • El archivo Pfam-A.seed contiene los alineamientos originales de cada familia en formato Stockholm, útil para reconstrucción filogenética.
  • hmmscan se usa para buscar todos los dominios en una o varias secuencias.
  • hmmsearch se usa para buscar un dominio específico en muchas secuencias.