¿Escribes software libre? ¡Usa una forja libre! Github es código cerrado, por lo que la repo principal de este proyecto está disponible en codeberg. Si quieres reportar un fallo o contribuir código, por favor usa codeberg; la repo de GH es sólamente un mirror donde issues y pull requests serán ignoradas.
Este script permite comparar una proteína o una serie de ellas contra una db, alinear los hits o coincidencias con BLAST y generar un árbol filogenético N-J usando MUSCLE, para finalmente mostrar info de los dominios presentes en las mismas usando PROSITE. El script está inicialmente pensado para genomas bacterianos, pero debería ser compatible con cualquier otro.
Para ejecutar este script, es necesario tener instalado:
Paquete | Descripción | Orden para instalar |
---|---|---|
Python 3.8 | Lenguaje de programación usado | sudo apt install python3 |
BLAST | Utilidad de alineamiento de secuencias | sudo apt install ncbi-blast+ |
MUSCLE 3.8 | Programa de alineamiento múltiple | sudo apt install muscle |
Biopython | Herramientas para Biología Computacional | pip install biopython |
Pandas | Herramientas para Biología Computacional | pip install pandas |
Termcolor | Coloriza el output de python | pip install termcolor |
Progress | Permite crear una barra de progreso | pip install progress |
Alternativamente, como one-liner: sudo apt install python3 ncbi-blast+ muscle; pip install biopython pandas termcolor progress
Para usar este método, es necesario tener instalado git en el sistema (sudo apt install git-all
)
- Clona este repositorio:
git clone https://codeberg.org/FlyingFlamingo/BioPython-Analyzer
- Entra en el directorio:
cd BioPython-Analyzer
- Ejecútalo
También puede bajarse la última versión estable directamente desde releases
El script consta de un módulo principal, que debe ejecutarse como
python3 main.py [OPT] query subject coverage identity evalue
donde:
[OPT]
: Las opciones que admite el script.query
: El fichero en formato fasta o multifasta que contiene las proteínas sobre las que se va a ejecutar la búsquedasubject
: El sujeto sobre el que se busca, es decir, el que usará blast para formar su database. Se debe proporcionar como una carpeta, preferiblemente un subdirectorio de la carpeta donde esté el script, que contenga n genebanks de ADN. También admite como input un archivo fasta o multifasta.coverage
: El valor mínimo (o cut-off) para la identidad, expresado como %, y en forma NN.NN y exclusiveidentity
: El valor mínimo (o cut-off) para el coverage, expresado como %, y en forma NN.NN y exclusiveevalue
: Describe el número de hits esperable en una db BLAST de un determinado tamaño. Se toman los valores inferiores al especificado.
Durante la ejecución, main.py llama a los módulos secundarios, blast.py, muscle.py y prosite.py. La ejecución del archivo requiere de la presencia de un archivo prosite.dat en la carpeta en que se ejecuta.. Si no lo tienes, puedes descargar dicho archivo aquí. Si se llama al script sin proporcionar los parámetros coverage, identity e-evalue, se seleccionarán los valores por defecto de 50, 30 y 0.00001, respectivamente. No requiere instalación.
Al llamar al script principal, tenemos las siguientes opciones:
Opción | Descripción |
---|---|
--help o -h |
Muestra la ayuda |
--verbose o -v |
Activa el modo verbose |
--options |
Muestra las opciones del script |
--license |
Muestra la licencia |