Skip to content
cccskills
FreePublished on GitHub

bioconductor-rblast

Seamlessly interfaces the Basic Local Alignment Search Tool (BLAST) to search genetic sequence data bases. This work was partially supported by grant no. R21HG005912 from the National Human Genome Research Institute.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md4.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

rblast

Workflows

Create Custom Blast Db

Create a custom BLAST database from user-provided sequences and query it locally.

library(rBLAST)
library(Biostrings)
# Load example sequences
seq <- readRNAStringSet(system.file("examples/RNA_example.fasta", package = "rBLAST"))
# Write to FASTA
writeXStringSet(seq, filepath = "seqs.fasta")
# Create database
makeblastdb("seqs.fasta", db_name = "db/small", dbtype = "nucl")

Note: Input is an XStringSet object, and output is a set of local BLAST database files written to disk.

Standard Workflow

Download, extract, and query an existing NCBI BLAST database using local BLAST.

library(rBLAST)
# Download and extract 16S database
tgz_file <- blast_db_get("16S_ribosomal_RNA.tar.gz")
untar(tgz_file, exdir = "16S_rRNA_DB")

# Load existing database
bl <- blast(db = "./16S_rRNA_DB/16S_ribosomal_RNA")

# Query database
seq <- readRNAStringSet(system.file("examples/RNA_example.fasta", package = "rBLAST"))[1]
cl <- predict(bl, seq)

Note: Input is a path to a local BLAST database and a query XStringSet object; output is a data.frame of matches.

Create And Query Custom Db

Seamlessly interfaces the Basic Local Alignment Search Tool (BLAST) to search genetic sequence data

library(rBLAST)
library(Biostrings)
# 1. Read reference sequences
seq <- readRNAStringSet(system.file("examples/RNA_example.fasta", package = "rBLAST"))
# 2. Write sequences to a FASTA file
writeXStringSet(seq, filepath = "seqs.fasta")
# 3. Create custom BLAST database
makeblastdb("seqs.fasta", db_name = "db/small", dbtype = "nucl")
# 4. Load custom database
db <- blast("db/small")
# 5. Extract a subsequence fragment
fragment <- subseq(seq[1], start = 101, end = 200)
# 6. Query custom database
res <- predict(db, fragment)

Note: Input is a set of reference sequences and a query fragment; output is a data.frame of alignment matches.

When to Use

  • Local BLAST Queries: Running local BLAST queries directly from R using Bioconductor XStringSet objects (e.g., RNAStringSet, DNAStringSet).
  • Custom BLAST Databases: Creating custom BLAST databases from local FASTA files using makeblastdb and querying them locally.
  • NCBI Database Downloads: Downloading and caching pre-trained NCBI BLAST databases (e.g., 16S rRNA) using blast_db_get.

When NOT to Use

  • Remote NCBI Queries: For running BLAST queries remotely on NCBI servers without local BLAST+ installation (use annotate::blastSequences instead).
  • No Local BLAST+ Installation: If the BLAST+ command-line tools are not installed on the system or not in the system PATH.

Data Requirements

  • Query sequences as Biostrings::XStringSet objects (e.g., RNAStringSet).
  • Reference sequences in FASTA format for database creation.

Key Parameters

  • db: Path to the BLAST database in blast().
  • db_name: Output path and name prefix for the database in makeblastdb().
  • dbtype ("nucl"): Type of database to create ("nucl" or "prot") in makeblastdb().
  • BLAST_args: Additional command-line arguments passed to the BLAST executable in predict() (e.g., "-perc_identity 99").
  • custom_format: Custom output format string specifying columns to return in predict().

Best Practices

  • Verify BLAST+ is installed and accessible in R using has_blast() or Sys.which("blastn").
  • Set the system PATH environment variable using Sys.setenv if R cannot find the BLAST+ executables.
  • Organize custom database files by specifying a directory prefix (e.g., db/small) in makeblastdb.
  • Use unlink with recursive = TRUE to clean up temporary database directories and FASTA files.

Common Pitfalls

  • BLAST executable not found: Sys.which("blastn") returns "". Fix: Set the PATH environment variable to include the BLAST+ installation directory.
  • Database files missing or corrupted: Occurs if the database path is incorrect. Fix: Ensure the database prefix matches the one specified during makeblastdb.

Alternatives

  • annotate: Use blastSequences for querying the remote NCBI BLAST server.

Citations

  • Altschul, S. F., Gish, W., Miller, W., Myers, E. W., & Lipman, D. J. (1990). Basic local alignment search tool. Journal of Molecular Biology.

References

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

The package contains functions for exploratory oligonucleotide array analysis. The dependence on tkWidgets only concerns few convenience functions. 'affy' is fully functional without it.

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

This tool uses the label-tree function from HyPhy to annotate a phylogenetic tree. It allows users to select a subset of leaves using either a regular expression or a list of sequence names, and then apply a specified label to these selecte

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

This package provides a client for the Bioconductor AnnotationHub web resource. The AnnotationHub web resource provides a central location where genomic files (e.g., VCF, bed, wig) and other resources from standard locations (e.g., UCSC, En

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

apeglm provides Bayesian shrinkage estimators for effect sizes for a variety of GLM models, using approximation of the posterior for individual coefficients.

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

ASURAT is a software for single-cell data analysis. Using ASURAT, one can simultaneously perform unsupervised clustering and biological interpretation in terms of cell type, disease, biological process, and signaling pathway activity. Inputting a single-cell RNA-seq data and knowledge-based databases, such as Cell Ontology, Gene Ontology, KEGG, etc., ASURAT transforms gene expression tables into original multivariate tables, termed sign-by-sample matrices (SSMs).

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

AUCell allows to identify cells with active gene sets (e.g. signatures, gene modules...) in single-cell RNA-seq data. AUCell uses the "Area Under the Curve" (AUC) to calculate whether a critical subset of the input gene set is enriched with

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

See all skills by bioMate-AI

Report a problem with this skill