Consulte: https://github.com/DominikBuchner/BOLDigger3
Um programa Python ainda melhor para consultar arquivos .fasta no banco de dados COI de www.boldsystems.org
Os conjuntos de dados metabarcoding de DNA geralmente compreendem centenas de Unidades Taxonômicas Operacionais (OTUs), exigindo consulta em bancos de dados para atribuição taxonômica. O sistema Barcode of Life Data (BOLD) é um banco de dados amplamente utilizado para esse fim entre os biólogos. No entanto, a plataforma online da BOLD limita os usuários a identificar lotes de apenas 50 sequências por vez. Além disso, o uso da API do BOLD não resolve completamente esse problema, pois não fornece acesso a dados privados e de lançamento antecipado.
O BOLDigger2, o sucessor do BOLDigger, visa superar essas limitações. Como um programa Python puro, o BOLDigger2 oferece:
Ao aproveitar esses recursos, o BOLDigger2 agiliza o processo de identificação da OTU, tornando-o mais eficiente e abrangente.
identify
, que realiza automaticamente a identificação, download de dados adicionais e seleção do hit principal. Isso permite a implementação direta em pipelines.identify
no BOLDigger2 aceita apenas um único argumento: o caminho para o arquivo FASTA a ser identificado. Ele salva todos os resultados na mesma pasta.BOLDigger2 requer Python versão 3.10 ou superior e pode ser facilmente instalado usando pip em qualquer linha de comando:
pip install boldigger2
Este comando instalará o BOLDigger2 junto com todas as suas dependências.
Para executar a função de identificação, use o seguinte comando:
boldigger2 identify PATH_TO_FASTA
Para automatizar a função de identificação em pipelines de bioinformática, as credenciais BOLD também podem ser passadas diretamente como argumentos opcionais
boldigger2 identify PATH_TO_FASTA -username USERNAME -password PASSWORD
Para personalizar os limites implementados para necessidades específicas do usuário, os limites podem ser passados como um argumento adicional (ordenado). Podem ser ultrapassados até 5 limites diferentes para os diferentes níveis taxonômicos (Espécie, Gênero, Família, Ordem, Classe). Os limites não ultrapassados serão substituídos por padrão, mas o BOLDigger2 também irá informá-lo sobre isso.
boldigger2 identify PATH_TO_FASTA -thresholds 99 97
Saída:
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:
O BOLDigger2 solicitará seu nome de usuário e senha e em seguida realizará a identificação.
Quando uma nova versão for lançada, você pode atualizar o BOLDigger2 digitando:
pip install --upgrade boldigger2
Buchner D, Leese F (2020) BOLDigger – um pacote Python para identificar e organizar sequências com os sistemas Barcode of Life Data. Metabarcoding e Metagenômica 4: e53535. https://doi.org/10.3897/mbmg.4.53535
O algoritmo BOLDigger2 opera de acordo com o seguinte fluxograma:
Faça login em BOLD:
Gere links de download para códigos de barras em nível de espécie:
Baixe os 100 maiores sucessos:
"top_100_hits_unsorted"
.Identifique sequências sem ocorrências em nível de espécie:
Gere links de download para todos os registros:
Baixe os 100 maiores sucessos de todos os registros:
"top_100_hits_unsorted"
.Classifique e salve os principais sucessos:
"top_100_hits_sorted"
.Salvar dados adicionais:
"top_100_hits_additional_data"
.Exportar dados adicionais para Excel:
Calcule e salve os principais sucessos:
identification_result.xlsx
) e no formato Parquet ( identification_result.parquet.snappy
) para processamento adicional rápido.Diferentes limiares (97%: nível de espécie, 95%: nível de gênero, 90%: nível de família, 85%: nível de ordem, <85% e >= 50: nível de classe) para os níveis taxonômicos são usados para encontrar o resultado mais adequado. . Depois de determinar o limite para todos os acertos, o acerto mais comum acima do limite será selecionado. Observe que, para todos os acertos abaixo do limite, a resolução taxonômica será ajustada adequadamente (por exemplo, para um acerto de 96%, as informações em nível de espécie serão descartadas e as informações em nível de gênero serão usadas como o nível taxonômico mais baixo).
O algoritmo BOLDigger2 funciona da seguinte forma:
Identifique a similaridade máxima : encontre o valor máximo de similaridade entre os 100 principais resultados atualmente em consideração.
Definir limite : defina o limite para este nível máximo de similaridade. Remova todos os resultados com semelhança abaixo deste limite. Por exemplo, se o acerto mais alto tiver uma similaridade de 100%, o limite será definido como 97% e todos os acertos abaixo desse limite serão removidos temporariamente.
Classificação e classificação : conte todas as classificações individuais e classifique-as por abundância.
Filtrar dados ausentes : elimine todas as classificações que contenham dados ausentes. Por exemplo, se o acerto mais comum for "Arthropoda --> Insecta" com uma similaridade de 100%, mas faltando valores para Ordem, Família, Gênero e Espécie.
Identificar ocorrência comum : procure a ocorrência mais comum que não tenha valores ausentes.
Return Hit : Se um hit sem valores ausentes for encontrado, retorne esse hit.
Ajuste de limite : se nenhuma ocorrência sem valores ausentes for encontrada, aumente o limite para o próximo nível mais alto e repita o processo até que uma ocorrência seja encontrada.
BOLDigger2 emprega um sistema de sinalização para destacar certas condições, indicando um grau de incerteza no acerto selecionado. Atualmente, existem cinco flags implementadas, que podem ser atualizadas conforme necessário:
Taxonomia de BIN reverso : esse sinalizador será acionado se todos os 100 principais resultados que representam a correspondência selecionada utilizarem a taxonomia de BIN reverso. A taxonomia Reverse BIN atribui nomes de espécies a sequências depositadas em BOLD que carecem de informações sobre espécies, potencialmente introduzindo incerteza.
Informações Taxonômicas Diferentes : Se houver duas ou mais entradas com informações taxonômicas diferentes acima do limite selecionado (por exemplo, duas espécies acima de 97%), esse sinalizador é acionado, sugerindo possíveis discrepâncias.
Dados privados ou de lançamento antecipado : se todos os 100 principais hits que representam o hit principal forem hits privados ou de lançamento antecipado, esse sinalizador será acionado, indicando acessibilidade limitada aos dados.
Acerto Único : Este sinalizador indica que o resultado do maior acerto representa um acerto único entre os 100 maiores acertos, potencialmente exigindo um exame mais aprofundado.
Múltiplos BINs : Se o hit em nível de espécie selecionado for composto por mais de um BIN, esse sinalizador é levantado, sugerindo potenciais complexidades na atribuição taxonômica.
Dada a presença destes sinalizadores, é aconselhável realizar um exame mais detalhado de todas as ocorrências sinalizadas para melhor compreender e resolver quaisquer incertezas na ocorrência selecionada.