2 de junio de 2022

Traducir codones a aminoácidos en el terminal

Hola,

hoy me he vuelto a encontrar con una tarea frecuente cuando trabajas con secuencias genómicas, la de traducir codones a aminoácidos. Para unas pocas secuencias se pueden usar herramientas Web como https://web.expasy.org/translate , pero para hacerlo de manera programática y a medida me pareció más conveniente hacerlo con el clásico módulo BioPerl, que tiene documentación específica para esta tarea aquí, incluyendo cómo cambiar de tabla de uso de codones o de fase. En concreto usaremos un one-liner, un pequeño comando en Perl, similar a otros que podeís ver aquí.

 



##1) Instalación, muestro 3 opciones


# 1.1) ubuntu/Debian
sudo apt-get install -y bioperl

# 1.2) bioconda
conda install perl-bioperl

# 1.3) cpanm
cpan -i App:cpanminus cpanm --force Bio::Perl


# 2) Traducciones de un fichero FASTA (codons.fna)

# 2.1 Si bioperl está en ubicación central en @INC
perl -MBio::Seq -lne 'if(/^>/){ print } else { print Bio::Seq->new(-seq => $_)->translate()->seq() }' codons.fna > peptides.faa 


# 2.2) Si bioperl está instalada en otro sitio
perl -I $biopath -MBio::Seq -lne 'if(/^>/){ print } else { print Bio::Seq->new(-seq => $_)->translate()->seq() }' codons.fna > peptides.faa

# 2.3) Para comprobar codones de stop internos
grep -B 1 -P "\*[A-Z]" peptides.faa


Hasta pronto,

Bruno

1 comentario:

  1. Se puede hacer con curl:

    curl -s -d "dna_sequence=ATCG....AGCTAG&output_format=fasta" https://web.expasy.org/cgi-bin/translate/dna2aa.cgi > my_output.fasta

    ResponderEliminar