Portable BLAST-like algorithm library and its implementations for command line, Python, and R

dc.contributor.authorSchmid Steven
dc.contributor.authorJeevannavar Aditya
dc.contributor.authorJulian Timothy R.
dc.contributor.authorTamminen Manu
dc.contributor.organizationfi=fysiologia ja genetiikka|en=Physiology and Genetics|
dc.contributor.organization-code1.2.246.10.2458963.20.70712835001
dc.converis.publication-id182416497
dc.converis.urlhttps://research.utu.fi/converis/portal/Publication/182416497
dc.date.accessioned2025-08-28T03:13:22Z
dc.date.available2025-08-28T03:13:22Z
dc.description.abstract<p>Basic local-alignment search tool (BLAST) is a versatile and commonly used sequence analysis tool in bioinformatics. BLAST permits fast and flexible sequence similarity searches across nucleotide and amino acid sequences, leading to diverse applications such as protein domain identification, orthology searches, and phylogenetic annotation. Most BLAST implementations are command line tools which produce output as comma-separated values files. However, a portable, modular and embeddable implementation of a BLAST-like algorithm, is still missing from our toolbox. Here we present nsearch, a command line tool and C++11 library which provides BLAST-like functionality that can easily be embedded in any application. As an example of this portability we present Blaster which leverages nsearch to provide native BLAST-like functionality for the R programming language, as well as npysearch which provides similar functionality for Python. These packages permit embedding BLAST-like functionality into larger frameworks such as Shiny or Django applications. Benchmarks show that nsearch, npysearch, and Blaster are comparable in speed and accuracy to other commonly used modern BLAST implementations such as VSEARCH and BLAST+. We envision similar implementations of nsearch for other languages commonly used in data science such as Julia to facilitate sequence similarity comparisons. Nsearch, Blaster and npysearch are free to use under the BSD 3.0 license and available on Github Conda, CRAN (Blaster) and PyPi (npysearch).<br></p>
dc.identifier.eissn1932-6203
dc.identifier.jour-issn1932-6203
dc.identifier.olddbid210389
dc.identifier.oldhandle10024/193416
dc.identifier.urihttps://www.utupub.fi/handle/11111/51470
dc.identifier.urlhttps://doi.org/10.1371/journal.pone.0289693
dc.identifier.urnURN:NBN:fi-fe2025082790623
dc.language.isoen
dc.okm.affiliatedauthorJeevannavar, Aditya
dc.okm.affiliatedauthorTamminen, Manu
dc.okm.discipline113 Computer and information sciencesen_GB
dc.okm.discipline1181 Ecology, evolutionary biologyen_GB
dc.okm.discipline1184 Genetics, developmental biology, physiologyen_GB
dc.okm.discipline113 Tietojenkäsittely ja informaatiotieteetfi_FI
dc.okm.discipline1181 Ekologia, evoluutiobiologiafi_FI
dc.okm.discipline1184 Genetiikka, kehitysbiologia, fysiologiafi_FI
dc.okm.internationalcopublicationinternational co-publication
dc.okm.internationalityInternational publication
dc.okm.typeA1 ScientificArticle
dc.publisherPublic Library of Science
dc.publisher.countryUnited Statesen_GB
dc.publisher.countryYhdysvallat (USA)fi_FI
dc.publisher.country-codeUS
dc.relation.articlenumbere0289693
dc.relation.doi10.1371/journal.pone.0289693
dc.relation.ispartofjournalPLoS ONE
dc.relation.issue11
dc.relation.volume18
dc.source.identifierhttps://www.utupub.fi/handle/10024/193416
dc.titlePortable BLAST-like algorithm library and its implementations for command line, Python, and R
dc.year.issued2023

Tiedostot

Näytetään 1 - 1 / 1
Ladataan...
Name:
journal.pone.0289693.pdf
Size:
289.58 KB
Format:
Adobe Portable Document Format