Skip to content

PhageFilter uses a Sequence Bloom Tree (SBT) to filter bacteriophage reads from metagenomic files.

License

Notifications You must be signed in to change notification settings

Dreycey/PhageFilter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

software workflow status Coverage benchmarking workflow status LICENSE

phage filter logo

PhageFilter

PhageFilter uses a Sequence Bloom Tree (SBT) to filter bacteriophage reads from metagenomic files.

Usage

PhageFilter has three primary commands: (1) Build, (2) Query, and (3) Add. Each of these functions contains it's own set of required arguments that can be listed using the --help flag.

Usage: phage_filter [OPTIONS] <COMMAND>

Commands:
  build  Builds the BloomTree
  add    Adds genomes to an already built BloomFilter
  query  Queries a set of reads. (ran after building the bloom tree)

Verbosity level

The user can set the verbosity level. Below are different options for verbosity, which are available using the Rust clap-verbosity-flag crate. If users want information about the tree being built, or other information about the particular run, use the -vv level of verbosity to get warnings and info.

-q silences output (Errors not shown.)
-v show warnings
-vv show info
-vvv show debug
-vvvv show trace

Installation

PhageFilter is written in Rust and uses the Cargo package manager for installing all dependencies. After Installing Rust, running the following command from the root directory will install all dependencies as well as compile the software.

cargo build --release

For easier calling, it is recomended the compiled executable, target/release/phage_filter, be stored in a bin/ directory and added to the users environmental path.

Examples

These commands assume the user has moved the executable to the enironmental path. If not, call the binary (i.e. target/release/phage_filter) directly instead of phage_filter.

  1. Build the genomic sequence bloom tree (gSBT)
target/release/phage_filter build --genomes examples/genomes/viral_genome_dir/ --db-path tree
  1. Query reads
target/release/phage_filter query -r examples/test_reads/ -o genomes_in_file.csv -d tree/ -f 1.0
  1. Add new genomes to an already built gSBT
target/release/phage_filter add --genomes PATH/TO/OTHER/GENOMES/ --db-path tree/