DIAMOND BLASTP¶
DIAMOND is a sequence aligner for protein and translated DNA searches, designed for high performance analysis of big sequence data. For documentation, see https://github.com/bbuchfink/diamond/wiki
Example¶
This wrapper can be used in the following way:
rule diamond_blastp:
input:
fname_fasta="{sample}.fasta", # Query fasta file
fname_db="db.dmnd", # Diamond db
output:
fname="{sample}.tsv.gz", # Output file
log:
"logs/diamond_blastp/{sample}.log",
params:
extra="--header --compress 1", # Additional arguments
threads: 8
wrapper:
"v1.19.1/bio/diamond/blastp"
Note that input, output and log file paths can be chosen freely.
When running with
snakemake --use-conda
the software dependencies will be automatically deployed into an isolated environment before execution.
Software dependencies¶
diamond=2.0.15
Authors¶
- Nikos Tsardakas Renhuldt
- Kim Philipp Jablonski
Code¶
__author__ = "Kim Philipp Jablonski, Nikos Tsardakas Renhuldt"
__copyright__ = "Copyright 2020, Kim Philipp Jablonski, Nikos Tsardakas Renhuldt"
__email__ = "kim.philipp.jablonski@gmail.com, nikos.tsardakas_renhuldt@tbiokem.lth.se"
__license__ = "MIT"
from snakemake.shell import shell
extra = snakemake.params.get("extra", "")
log = snakemake.log_fmt_shell(stdout=False, stderr=True)
shell(
"diamond blastp"
" --threads {snakemake.threads}"
" --db {snakemake.input.fname_db}"
" --query {snakemake.input.fname_fasta}"
" --out {snakemake.output.fname}"
" {extra}"
" {log}"
)