https://github.com/biojulia/ncbiblast.jl

Thin wrapper around NCBI's BLAST+ CLI https://www.ncbi.nlm.nih.gov/books/NBK569856/

https://github.com/biojulia/ncbiblast.jl

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: ncbi.nlm.nih.gov
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.5%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Thin wrapper around NCBI's BLAST+ CLI https://www.ncbi.nlm.nih.gov/books/NBK569856/

Basic Info
  • Host: GitHub
  • Owner: BioJulia
  • License: mit
  • Language: Julia
  • Default Branch: main
  • Size: 21.5 KB
Statistics
  • Stars: 6
  • Watchers: 3
  • Forks: 2
  • Open Issues: 2
  • Releases: 2
Created almost 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme License

README.md

NCBIBlast

Build Status Coverage

This package is a thin wrapper around the Basic Local Alignment Search Tool CLI, better known as BLAST, developed by the National Center for Biotechnology Information (NCBI).

For now, this uses CondaPkg.jl to install BLAST+.

Usage

This package provides a thin-wrapper around the BLAST+ command line tools:

  • blastn
  • blastp
  • tblastn
  • blastx
  • makeblastdb

For each tool is controlled by keyword arguments, which are generally passed as -key value, unless value is true, in which case it is passed as -key.

For example, the julia call

julia blastn(; query = "a_file.txt", db="mydb", out="results.txt")

Will be sent to the shell as

sh $ blastn -query a_file.txt -db mydb -out results.txt

For all but makeblastdb, you can also pass a positional argument that will be piped as STDIN, and the special keyword argument stdout where results will be passed instead of being printed to the screen. The stdout kwarg can be a String representing a path, in which case a file will be created, or a julia IO type, in which case the results will be written to that object.

For example, to replicate the shell command

sh $ blastn -remote -outfmt "6 query subject expect" -db nr < myfile.fastn > output.tsv

You can do

julia blastn("myfile.fastn"; stdout="output.tsv", remote=true, outfmt="6 query subject expect", db="nr")

Examples

```julia-repl julia> makeblastdb(; in="test/example_files/dna2.fasta", dbtype="nucl")

Building a new DB, current time: 10/07/2024 16:59:40 New DB name: /home/kevin/Repos/NCBIBlast.jl/test/examplefiles/dna2.fasta New DB title: test/examplefiles/dna2.fasta Sequence type: Nucleotide Keep MBits: T Maximum file size: 3000000000B Adding sequences from FASTA; added 2 sequences in 0.00329995 seconds.

Process(makeblastdb -in test/example_files/dna2.fasta -dbtype nucl, ProcessExited(0))

julia> buf = IOBuffer("TTACCTGCCGTGAGTAAATTAAAATTTTATTGACTTAG") IOBuffer(data=UInt8[...], readable=true, writable=false, seekable=true, append=false, size=38, maxsize=Inf, ptr=1, mark=-1)

julia> blastn(buf; db="test/examplefiles/dna2.fasta", outfmt="6") Query1 Test1 100.000 38 0 0 1 38 82 119 5.64e-18 71.3 Process(blastn -db test/example_files/dna2.fasta -outfmt 6, ProcessExited(0))

julia> using CSV, DataFrames

julia> io = IOBuffer();

julia> blastn(buf; stdout=io, db="test/example_files/dna2.fasta", outfmt="6");

julia> seek(io, 0);

julia> CSV.read(io, DataFrame; header=false) 1×12 DataFrame Row │ Column1 Column2 Column3 Column4 Column5 Column6 Column7 Column8 Column9 Column10 Column11 Column12 │ String7 String7 Float64 Int64 Int64 Int64 Int64 Int64 Int64 Int64 Float64 Float64 ─────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────── 1 │ Query_1 Test1 100.0 38 0 0 1 38 82 119 5.64e-18 71.3

```

Owner

  • Name: BioJulia
  • Login: BioJulia
  • Kind: organization

Bioinformatics and Computational Biology in Julia

GitHub Events

Total
  • Create event: 1
  • Commit comment event: 4
  • Release event: 1
  • Issue comment event: 2
  • Pull request event: 1
Last Year
  • Create event: 1
  • Commit comment event: 4
  • Release event: 1
  • Issue comment event: 2
  • Pull request event: 1

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 18
  • Total Committers: 3
  • Avg Commits per committer: 6.0
  • Development Distribution Score (DDS): 0.556
Past Year
  • Commits: 18
  • Committers: 3
  • Avg Commits per committer: 6.0
  • Development Distribution Score (DDS): 0.556
Top Committers
Name Email Commits
Jon Alm Eriksen j****n@p****m 8
Kevin Bonham k****n@b****h 8
Jakob Nybo Nissen j****n@g****m 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 12 months ago

All Time
  • Total issues: 4
  • Total pull requests: 3
  • Average time to close issues: 1 day
  • Average time to close pull requests: 2 days
  • Total issue authors: 3
  • Total pull request authors: 2
  • Average comments per issue: 2.0
  • Average comments per pull request: 2.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 4
  • Pull requests: 3
  • Average time to close issues: 1 day
  • Average time to close pull requests: 2 days
  • Issue authors: 3
  • Pull request authors: 2
  • Average comments per issue: 2.0
  • Average comments per pull request: 2.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • kescobo (2)
  • jonalm (1)
  • JuliaTagBot (1)
Pull Request Authors
  • jonalm (4)
  • jakobnissen (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • julia 2 total
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 2
juliahub.com: NCBIBlast

Thin wrapper around NCBI's BLAST+ CLI https://www.ncbi.nlm.nih.gov/books/NBK569856/

  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 2 Total
Rankings
Dependent repos count: 3.2%
Downloads: 4.4%
Average: 8.0%
Dependent packages count: 16.3%
Last synced: 10 months ago

Dependencies

.github/workflows/CI.yml actions
  • actions/checkout v4 composite
  • codecov/codecov-action v4 composite
  • julia-actions/cache v2 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/julia-processcoverage v1 composite
  • julia-actions/julia-runtest v1 composite
  • julia-actions/setup-julia v2 composite
.github/workflows/CompatHelper.yml actions
.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite