SnakeMake Bioinformatics Library.
Project description
In case of any problem, don’t hesitate to contact me on karel.brinda@gmail.com.
Short description
SMBL is a library of some useful rules and Python functions which can be used in Snakemake (https://bitbucket.org/johanneskoester/snakemake/) pipelines. It makes possible to automatically download various bioinformatics programs like read mappers, read simulators, conversion tools, etc. It supports also downloading and conversion of some important references in FASTA format (e.g., human genome).
Installation / upgrade
To install SMBL, you need to have Unix-like operating system (e.g., Linux, MacOS) and Python at least 3.2. Installation / upgrade can be performed using the following command.
pip install --upgrade smbl
If SnakeMake has not been installed, yet, it will be installed automatically with SMBL.
The current GIT version of SMBL can be installed by
git clone --depth 1 http://github.com/karel-brinda/smbl
cd smbl
./install.sh
Usage
To use SMBL, you have to import the smbl Python package and include a file with all rules using:
import smbl
include: smbl.include()
Then you can use all supported programs or data. When they appear as input of a rule, they will be downloaded or compiled.
All the programs are installed into ~/.smbl/bin/ and all FASTA files into ~/.smbl/fa/.
Programs
Program |
Variable with its filename |
Link |
---|---|---|
art_454 |
smbl.prog.ART_454 |
http://www.niehs.nih.gov/research/resources/software/biostatistics/art/ |
art_illumina |
smbl.prog.ART_ILLUMINA |
http://www.niehs.nih.gov/research/resources/software/biostatistics/art/ |
art_solid |
smbl.prog.ART_SOLID |
http://www.niehs.nih.gov/research/resources/software/biostatistics/art/ |
bcftools |
smbl.prog.BCFTOOLS |
|
bfast |
smbl.prog.BFAST |
|
bgzip |
smbl.prog.BGZIP |
|
bowtie2 |
smbl.prog.BOWTIE2 |
|
bowtie2-build |
smbl.prog.BOWTIE2_BUILD |
|
bowtie2-inspect |
smbl.prog.BOWTIE2_INSPECT |
|
bwa |
smbl.prog.BWA |
|
curesim.jar |
smbl.prog.CURESIM |
|
curesim_eval.jar |
smbl.prog.CURESIM_EVAL |
|
dwgsim |
smbl.prog.DWGSIM |
|
dwgsim_eval.pl |
smbl.prog.DWGSIM_EVAL |
|
drfast |
smbl.prog.DRFAST |
|
freec |
smbl.prog.FREEC |
|
gem-indexer |
smbl.prog.GEM_INDEXER |
|
gem-mapper |
smbl.prog.GEM_MAPPER |
|
gem-2-sam |
smbl.prog.GEM_2_SAM |
|
gnuplot4 |
smbl.prog.GNUPLOT4 |
|
gnuplot5 |
smbl.prog.GNUPLOT5 |
|
lastal |
smbl.prog.LASTAL |
|
lastdb |
smbl.prog.LASTDB |
|
mason_frag_sequencing |
smbl.prog.MASON_FRAG_SEQUENCING |
|
mason_genome |
smbl.prog.MASON_GENOME |
|
mason_materializer |
smbl.prog.MASON_MATERIALIZER |
|
mason_methylation |
smbl.prog.MASON_METHYLATION |
|
mason_simulator |
smbl.prog.MASON_SIMULATOR |
|
mason_splicing |
smbl.prog.MASON_SPLICING |
|
mason_variator |
smbl.prog.MASON_VARIATOR |
|
mrfast |
smbl.prog.MRFAST |
|
mrsfast |
smbl.prog.MRSFAST |
|
perm |
smbl.prog.PERM |
|
pbsim |
smbl.prog.PBSIM |
|
picard |
smbl.prog.PICARD |
|
sambamba |
smbl.prog.SAMBAMBA |
|
samtools |
smbl.prog.SAMTOOLS |
|
sirfast |
smbl.prog.SIRFAST |
|
storm-color |
smbl.prog.STORM_COLOR |
|
storm-nucleotide |
smbl.prog.STORM_NUCLEOTIDE |
|
tabix |
smbl.prog.TABIX |
|
twoBitToFa |
smbl.prog.TWOBITTOFA |
|
wgsim |
smbl.prog.WGSIM |
|
wgsim_eval.pl |
smbl.prog.WGSIM_EVAL |
|
xs |
smbl.prog.XS |
FASTA files
FASTA file |
Variable with its filename |
---|---|
An example small FASTA file |
smbl.fasta.EXAMPLE_1 |
An example small FASTA file |
smbl.fasta.EXAMPLE_2 |
An example small FASTA file |
smbl.fasta.EXAMPLE_3 |
Human genome HG38 (GRCh38) |
smbl.fasta.HG38, smbl.fasta.HUMAN_GRCH38 |
Example
The following example demonstrates how SMBL can be used for automatic installation of software.
Create an empty file named Snakefile with the following content:
import smbl
include: smbl.include()
rule all:
input:
smbl.prog.DWGSIM,
smbl.prog.BWA,
smbl.fasta.EXAMPLE
params:
PREF="simulated_reads",
INDEX="bwa_index"
output:
"alignment.sam"
run:
# read simulation
shell("{input[0]} -C 1 {input[2]} {params.PREF}")
# creating BWA index of the reference sequence
shell("{input[1]} index {input[2]}")
# mapping by BWA
shell("{input[1]} mem {input[2]} {params.PREF}.bfast.fastq > alignment.sam")
Run the script.
snakemake
What happens:
An example FASTA file is downloaded
DwgSim and BWA are downloaded, compiled and installed
DwgSim simulates reads from the example Fasta file
These reads are mapped back to the reference by BWA (alignment.sam is created)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.