Suite CLI para buscar, descargar y analizar datos biológicos del NCBI.
147
BioToolKit es un wrapper o envoltorio en Python para las Utilidades de Programación Entrez (E-utilities) del NCBI y un conjunto de herramientas de análisis de datos (por ahora simple), fusionados en una única aplicación. La versión 2.0 evoluciona para convertirse en una plataforma de análisis interactiva, permitiendo a investigadores, estudiantes y bioinformáticos ejecutar flujos de trabajo complejos directamente desde un shell inteligente que recuerda el contexto de la investigación, eliminando problemas de dependencias y la necesidad de repetir argumentos.
Modo Interactivo Inteligente: Inicia un shell que mantiene el estado de tu sesión (historial de búsqueda, base de datos), permitiendo encadenar comandos de forma fluida y natural.
Adquisición de Datos Completa: Implementa los comandos más importantes de E-utilities como search, fetch, summary, link, filter y más.
Análisis Potente:
Extrae datos de XML de forma avanzada, con exploración de bloques anidados y filtrado condicional (xtract).
Convierte formatos de datos, empezando por JSON a tablas de texto (transmute).
Analiza texto (frecuencia, N-gramas) y secuencias (propiedades físico-químicas).
Visual: Genera visualizaciones de datos como nubes de palabras y gráficos de hidrofobicidad.
Portátil y Robusto: Empaquetado en una imagen Docker alpine ligera y segura. Funciona igual en cualquier sistema y maneja errores de red y de API de forma inteligente.
1. Descargar la Imagen Pública: (Reemplaza baldo365 con tu nombre de usuario real de Docker Hub si es diferente).
docker pull baldo365/biotoolkit:2.0
2. Iniciar el Modo Interactivo (Recomendado): Este es el corazón de la v2.0.
docker run --rm -it -v "$(pwd)/datos:/data" baldo365/biotoolkit:2.0 --interactive
Nota: Los flags
-itson esenciales para que el modo interactivo funcione correctamente.
Una vez dentro, verás el prompt BioToolKit>.
/dataImportante: Para cualquier operación que lea o escriba archivos, es obligatorio usar la bandera
-vde Docker para conectar una carpeta de tu máquina (ej.datos) a la carpeta/datadel contenedor.
Para ver todos los argumentos de un comando, ejecute <comando> --help dentro del shell interactivo.
| Comando | Descripción |
|---|---|
search | Busca en una base de datos del NCBI. |
fetch | Descarga registros completos por ID o desde el historial. |
summary | Obtiene resúmenes de registros, en formato legible o JSON. |
filter | Refina los resultados de un historial existente con un nuevo término. |
link | Encuentra enlaces entre diferentes bases de datos del NCBI. |
post | Sube una lista de IDs al historial del servidor de NCBI. |
info | Obtiene información y metadatos sobre una base de datos. |
gquery | Realiza una búsqueda global en todas las bases de datos de Entrez. |
spell | Busca sugerencias de ortografía para un término. |
| Comando | Descripción |
|---|---|
xtract | Extrae datos de archivos XML con soporte para bloques y condicionales. |
transmute | Convierte datos entre diferentes formatos (ej. json-to-table). |
analyze-text | Analiza un archivo de texto y extrae palabras y frases clave. |
analyze-fasta | Analiza un archivo FASTA y calcula propiedades de las secuencias. |
| Comando | Descripción |
|---|---|
status | Muestra el estado actual de la sesión (DB e historial guardados). |
clear | Limpia el estado de la sesión, borrando la DB y el historial. |
help | Muestra una lista de los comandos disponibles. |
exit | Sale del modo interactivo. |
Este ejemplo demuestra el uso de la v2.0, simulando un tema de investigación.
OBJETIVO: Encontrar artículos sobre el gen BRCA1 en humanos que discutan el "riesgo", y luego:
Extraer una lista de los autores de instituciones del Reino Unido (UK).
Crear una tabla-resumen con el ID, título y fecha de los artículos.
1. Iniciar el modo interactivo:
docker run --rm -it -v "$(pwd)/datos:/data" baldo365/biotoolkit:2.0 --interactive
2. Realizar la búsqueda inicial y establecer el estado de la sesión:
BioToolKit> search --db pubmed "BRCA1 AND human[ORGN]" --history
3. Verificar el estado (verás que db y el historial se han guardado):
BioToolKit> status
4. Filtrar los resultados para artículos que mencionen "riesgo":
BioToolKit> filter "risk"
5. Descargar los datos en XML para análisis profundo:
BioToolKit> fetch --rettype xml --output brca_risk.xml
6. Extraer autores del Reino Unido usando xtract con condicionales:
BioToolKit> xtract brca_risk.xml --pattern PubmedArticle --block Author --if-element Affiliation --if-contains "UK" --element LastName Initials
7. Descargar resúmenes en JSON para análisis rápido, limitando a 100:
BioToolKit> summary --retmode json --retmax 100 > datos/brca_summary.json
8. Convertir el JSON en una tabla limpia con transmute:
BioToolKit> transmute json-to-table brca_summary.json --fields uid title pubdate
9. Salir del shell:
BioToolKit> exit
Content type
Image
Digest
sha256:2c5aca201…
Size
171.8 MB
Last updated
over 1 year ago
docker pull baldo365/biotoolkit:2.0