Veuillez consulter : https://github.com/DominikBuchner/BOLDigger3
Un programme Python encore meilleur pour interroger les fichiers .fasta sur la base de données COI de www.boldsystems.org
Les ensembles de données de métabarcodage ADN comprennent souvent des centaines d'unités taxonomiques opérationnelles (OTU), nécessitant des requêtes sur des bases de données pour l'attribution taxonomique. Le système Barcode of Life Data (BOLD) est une base de données largement utilisée à cette fin par les biologistes. Cependant, la plateforme en ligne de BOLD limite les utilisateurs à identifier des lots de seulement 50 séquences à la fois. De plus, l'utilisation de l'API de BOLD ne résout pas complètement ce problème car elle ne donne pas accès aux données privées et à version anticipée.
BOLDigger2, le successeur de BOLDigger, vise à surmonter ces limitations. En tant que programme Python pur, BOLDigger2 propose :
En tirant parti de ces fonctionnalités, BOLDigger2 rationalise le processus d'identification OTU, le rendant plus efficace et plus complet.
identify
, qui effectue automatiquement l'identification, le téléchargement de données supplémentaires et la sélection du premier hit. Cela permet une mise en œuvre directe dans les pipelines.identify
de BOLDigger2 n'accepte qu'un seul argument : le chemin d'accès au fichier FASTA à identifier. Il enregistre tous les résultats dans le même dossier.BOLDigger2 nécessite Python version 3.10 ou supérieure et peut être facilement installé à l'aide de pip dans n'importe quelle ligne de commande :
pip install boldigger2
Cette commande installera BOLDigger2 avec toutes ses dépendances.
Pour exécuter la fonction d'identification, utilisez la commande suivante :
boldigger2 identify PATH_TO_FASTA
Pour automatiser la fonction d'identification dans les pipelines bioinformatiques, les informations d'identification BOLD peuvent également être transmises directement en tant qu'arguments facultatifs.
boldigger2 identify PATH_TO_FASTA -username USERNAME -password PASSWORD
Pour personnaliser les seuils implémentés en fonction des besoins spécifiques de l'utilisateur, les seuils peuvent être transmis comme argument supplémentaire (ordonné). Jusqu'à 5 seuils différents peuvent être franchis pour les différents niveaux taxonomiques (Espèce, Genre, Famille, Ordre, Classe). Les seuils non dépassés seront remplacés par défaut, mais BOLDigger2 vous en informera également.
boldigger2 identify PATH_TO_FASTA -thresholds 99 97
Sortir:
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 vous demandera votre nom d'utilisateur et votre mot de passe, puis effectuera l'identification.
Lorsqu'une nouvelle version est publiée, vous pouvez mettre à jour BOLDigger2 en tapant :
pip install --upgrade boldigger2
Buchner D, Leese F (2020) BOLDigger – un package Python pour identifier et organiser des séquences avec les systèmes Barcode of Life Data. Métabarcodage et métagénomique 4 : e53535. https://doi.org/10.3897/mbmg.4.53535
L'algorithme BOLDigger2 fonctionne selon l'organigramme suivant :
Connectez-vous à BOLD :
Générez des liens de téléchargement pour les codes-barres au niveau de l'espèce :
Téléchargez les 100 meilleurs succès :
"top_100_hits_unsorted"
.Identifiez les séquences sans occurrences au niveau de l'espèce :
Générez des liens de téléchargement pour tous les enregistrements :
Téléchargez les 100 meilleurs hits pour tous les disques :
"top_100_hits_unsorted"
.Trier et enregistrer les meilleurs hits :
"top_100_hits_sorted"
.Enregistrer des données supplémentaires :
"top_100_hits_additional_data"
.Exporter des données supplémentaires vers Excel :
Calculez et enregistrez les meilleurs hits :
identification_result.xlsx
) et au format Parquet ( identification_result.parquet.snappy
) pour un traitement ultérieur rapide.Différents seuils (97 % : niveau d'espèce, 95 % : niveau de genre, 90 % : niveau de famille, 85 % : niveau d'ordre, <85 % et >= 50 : niveau de classe) pour les niveaux taxonomiques sont utilisés pour trouver le résultat le mieux adapté. . Après avoir déterminé le seuil pour tous les hits, le hit le plus courant au-dessus du seuil sera sélectionné. Notez que pour tous les résultats inférieurs au seuil, la résolution taxonomique sera ajustée en conséquence (par exemple, pour un résultat de 96 %, les informations au niveau de l'espèce seront ignorées et les informations au niveau du genre seront utilisées comme niveau taxonomique le plus bas).
L'algorithme BOLDigger2 fonctionne comme suit :
Identifier la similarité maximale : recherchez la valeur de similarité maximale parmi les 100 premiers résultats actuellement pris en compte.
Définir le seuil : définissez le seuil sur ce niveau de similarité maximum. Supprimez tous les hits présentant une similarité inférieure à ce seuil. Par exemple, si le hit le plus élevé a une similarité de 100 %, le seuil sera fixé à 97 % et tous les hits inférieurs à ce seuil seront temporairement supprimés.
Classification et tri : comptez toutes les classifications individuelles et triez-les par abondance.
Filtrer les données manquantes : supprimez toutes les classifications contenant des données manquantes. Par exemple, si le résultat le plus courant est « Arthropoda --> Insecta » avec une similarité de 100 % mais des valeurs manquantes pour l'ordre, la famille, le genre et l'espèce.
Identifier le hit commun : recherchez le hit le plus courant pour lequel il n'y a aucune valeur manquante.
Return Hit : Si un hit sans valeurs manquantes est trouvé, renvoyez ce hit.
Ajustement du seuil : si aucun résultat sans valeurs manquantes n'est trouvé, augmentez le seuil au niveau supérieur suivant et répétez le processus jusqu'à ce qu'un résultat soit trouvé.
BOLDigger2 utilise un système de marquage pour mettre en évidence certaines conditions, indiquant un degré d'incertitude dans le hit sélectionné. Actuellement, cinq indicateurs sont implémentés, qui peuvent être mis à jour si nécessaire :
Taxonomie BIN inversée : cet indicateur est levé si tous les 100 premiers résultats représentant la correspondance sélectionnée utilisent la taxonomie BIN inversée. La taxonomie inversée BIN attribue des noms d'espèces à des séquences déposées sur BOLD qui manquent d'informations sur les espèces, ce qui peut introduire une incertitude.
Informations taxonomiques différentes : S'il y a deux entrées ou plus avec des informations taxonomiques différentes au-dessus du seuil sélectionné (par exemple, deux espèces au-dessus de 97 %), cet indicateur est déclenché, suggérant des divergences potentielles.
Données privées ou à diffusion anticipée : si tous les 100 premiers hits représentant le hit le plus important sont des hits privés ou à diffusion anticipée, cet indicateur est levé, indiquant une accessibilité limitée aux données.
Unique Hit : cet indicateur indique que le résultat le plus élevé représente un résultat unique parmi les 100 premiers résultats, nécessitant potentiellement un examen plus approfondi.
BIN multiples : si l'appel au niveau de l'espèce sélectionné est composé de plus d'un BIN, cet indicateur est levé, suggérant des complexités potentielles dans l'affectation taxonomique.
Compte tenu de la présence de ces indicateurs, il est conseillé de procéder à un examen plus approfondi de toutes les alertes signalées afin de mieux comprendre et résoudre les incertitudes liées à l'alerte sélectionnée.