Consulte: https://github.com/DominikBuchner/BOLDigger3
Un programa Python aún mejor para consultar archivos .fasta en la base de datos COI de www.boldsystems.org
Los conjuntos de datos de metacódigos de barras de ADN a menudo comprenden cientos de Unidades Taxonómicas Operativas (OTU), lo que requiere consultas en bases de datos para la asignación taxonómica. El sistema Barcode of Life Data (BOLD) es una base de datos ampliamente utilizada para este propósito entre los biólogos. Sin embargo, la plataforma en línea de BOLD limita a los usuarios a identificar lotes de sólo 50 secuencias a la vez. Además, el uso de la API de BOLD no soluciona completamente este problema, ya que no proporciona acceso a datos privados y de publicación anticipada.
BOLDigger2, el sucesor de BOLDigger, pretende superar estas limitaciones. Como programa Python puro, BOLDigger2 ofrece:
Al aprovechar estas funciones, BOLDigger2 agiliza el proceso de identificación de OTU, haciéndolo más eficiente y completo.
identify
, que realiza automáticamente la identificación, la descarga de datos adicionales y la selección del resultado principal. Esto permite la implementación directa en tuberías.identify
en BOLDigger2 solo acepta un único argumento: la ruta al archivo FASTA que se va a identificar. Guarda todos los resultados en la misma carpeta.BOLDigger2 requiere Python versión 3.10 o superior y se puede instalar fácilmente usando pip en cualquier línea de comando:
pip install boldigger2
Este comando instalará BOLDigger2 junto con todas sus dependencias.
Para ejecutar la función de identificación, utilice el siguiente comando:
boldigger2 identify PATH_TO_FASTA
Para automatizar la función de identificación en procesos bioinformáticos, las credenciales BOLD también se pueden pasar directamente como argumentos opcionales.
boldigger2 identify PATH_TO_FASTA -username USERNAME -password PASSWORD
Para personalizar los umbrales implementados para las necesidades específicas del usuario, los umbrales se pueden pasar como un argumento adicional (ordenado). Se pueden superar hasta 5 umbrales diferentes para los diferentes niveles taxonómicos (Especie, Género, Familia, Orden, Clase). Los umbrales que no se superen se reemplazarán de forma predeterminada, pero BOLDigger2 también le informará al respecto.
boldigger2 identify PATH_TO_FASTA -thresholds 99 97
Producción:
19:16:16: Default thresholds changed!
19:16:16: Species: 99, Genus: 97, Family: 90, Order: 85, Class: 50
19:16:16: Trying to log in.
BOLD username:
BOLDigger2 le solicitará su nombre de usuario y contraseña y luego realizará la identificación.
Cuando se lanza una nueva versión, puede actualizar BOLDigger2 escribiendo:
pip install --upgrade boldigger2
Buchner D, Leese F (2020) BOLDigger: un paquete Python para identificar y organizar secuencias con los sistemas Barcode of Life Data. Metabarcodes y Metagenómica 4: e53535. https://doi.org/10.3897/mbmg.4.53535
El algoritmo BOLDigger2 opera según el siguiente diagrama de flujo:
Inicie sesión en NEGRITA:
Genere enlaces de descarga para códigos de barras a nivel de especie:
Descargar los 100 mejores éxitos:
"top_100_hits_unsorted"
.Identificar secuencias sin coincidencias a nivel de especie:
Generar enlaces de descarga para todos los registros:
Descargue los 100 mejores éxitos de todos los discos:
"top_100_hits_unsorted"
.Ordenar y guardar visitas principales:
"top_100_hits_sorted"
.Guardar datos adicionales:
"top_100_hits_additional_data"
.Exportar datos adicionales a Excel:
Calcule y guarde los mejores resultados:
identification_result.xlsx
) como en formato Parquet ( identification_result.parquet.snappy
) para un procesamiento posterior rápido.Se utilizan diferentes umbrales (97%: nivel de especie, 95%: nivel de género, 90%: nivel de familia, 85%: nivel de orden, <85% y >= 50: nivel de clase) para los niveles taxonómicos para encontrar el mejor ajuste. . Después de determinar el umbral para todos los resultados, se seleccionará el resultado más común por encima del umbral. Tenga en cuenta que para todos los resultados por debajo del umbral, la resolución taxonómica se ajustará en consecuencia (por ejemplo, para un resultado del 96%, la información a nivel de especie se descartará y la información a nivel de género se utilizará como el nivel taxonómico más bajo).
El algoritmo BOLDigger2 funciona de la siguiente manera:
Identificar la similitud máxima : encuentre el valor de similitud máxima entre los 100 resultados principales actualmente bajo consideración.
Establecer umbral : establece el umbral en este nivel máximo de similitud. Elimine todos los resultados con una similitud por debajo de este umbral. Por ejemplo, si el resultado más alto tiene una similitud del 100%, el umbral se establecerá en 97% y todos los resultados por debajo de este umbral se eliminarán temporalmente.
Clasificación y ordenación : cuente todas las clasificaciones individuales y ordénelas por abundancia.
Filtrar datos faltantes : elimine todas las clasificaciones que contengan datos faltantes. Por ejemplo, si el resultado más común es "Arthropoda --> Insecta" con una similitud del 100% pero faltan valores para Orden, Familia, Género y Especie.
Identificar acierto común : busque el acierto más común al que no le falten valores.
Devolver resultado : si se encuentra un resultado sin valores faltantes, devuelva ese resultado.
Ajuste de umbral : si no se encuentra ningún resultado sin valores faltantes, aumente el umbral al siguiente nivel superior y repita el proceso hasta que se encuentre un resultado.
BOLDigger2 emplea un sistema de señalización para resaltar ciertas condiciones, indicando un grado de incertidumbre en el resultado seleccionado. Actualmente, hay cinco indicadores implementados, que pueden actualizarse según sea necesario:
Taxonomía BIN inversa : esta bandera se activa si los 100 resultados principales que representan la coincidencia seleccionada utilizan taxonomía BIN inversa. La taxonomía BIN inversa asigna nombres de especies a secuencias depositadas en BOLD que carecen de información sobre las especies, lo que potencialmente introduce incertidumbre.
Información taxonómica diferente : si hay dos o más entradas con información taxonómica diferente por encima del umbral seleccionado (por ejemplo, dos especies por encima del 97%), se activa esta bandera, lo que sugiere posibles discrepancias.
Datos privados o de publicación anticipada : si las 100 visitas principales que representan la visita principal son visitas privadas o de publicación anticipada, se activa esta bandera, lo que indica accesibilidad limitada a los datos.
Impacto único : esta bandera indica que el resultado de mayor impacto representa un resultado único entre los 100 principales resultados, lo que podría requerir un mayor escrutinio.
Múltiples BIN : si el resultado a nivel de especie seleccionado se compone de más de un BIN, se activa esta bandera, lo que sugiere posibles complejidades en la asignación taxonómica.
Dada la presencia de estas banderas, es aconsejable realizar un examen más detallado de todos los hits marcados para comprender mejor y abordar cualquier incertidumbre en el hit seleccionado.