https://github.com/alejandrogzi/packbed
pack a .bed into overlapping components
Science Score: 13.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
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.8%) to scientific vocabulary
Keywords
Repository
pack a .bed into overlapping components
Basic Info
Statistics
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 5
Topics
Metadata Files
README.md
packbed
pack a .bed into overlapping components
Features
- pack any number of .bed files into overlapping components through a binary, Rust library or Python module
- write a unique overlapping-component-colorized bed file out of any number of .bed files through a binary, Rust library or Python module
- split components into separate .bed files through a binary, Rust library or Python module
- write serialized components to a binary file through a binary and Rust library
- read serialized components from a binary file through a Rust library or Python module
- write specific components each to a different .bed file through a Rust library or Python module
What's new on packbed v0.0.7!
- Implements a new query range algorithm to pack components
- Reduces time by more than x25 when working with more than 1 million reads
Usage
Binary
``` bash
Usage: packbed [OPTIONS] --bed
Arguments:
-b, --bed
Options:
-t, --threads
[!TIP] If you want to get components in separate .bed files use:
bash packbed -b path/to/b1.bed,path/to/b2.bed -o path/to/output --type compin case you want to send each component to a different subdirectory (good to parallelize processes):bash packbed -b path/to/b1.bed,path/to/b2.bed -o path/to/output --type comp -sif you want to colorize the components but send them all to just 1.bed file [default]:bash packbed -b path/to/b1.bed,path/to/b2.bed -o path/to/output --colorize
Library
``` rust use packbed::packbed;
fn main() {
let bed1 = PathBuf::new("/path/to/b1.bed");
let bed2 = PathBuf::new("/path/to/b2.bed");
let beds = vec![bed1, bed2];
let overlap_type = OverlapType::Exon;
let colorize = true;
let comps: HashMap<String, Vec<Vec<Arc<GenePred>>>> = packbed(
beds,
overlap_type,
colorize)
.unwrap();
} ```
Python
build the port to install it as a pkg:
bash
git clone https://github.com/alejandrogzi/packbed.git && cd packbed/py-packbed
hatch shell
maturin develop --release
use it:
``` python
from packbed import pack
beds = ["path/to/bed1.bed", "path/to/bed2.bed"] comps = pack(beds) ```
crate: https://crates.io/crates/packbed
Owner
- Name: Alejandro Gonzales-Irribarren
- Login: alejandrogzi
- Kind: user
- Repositories: 1
- Profile: https://github.com/alejandrogzi
GitHub Events
Total
- Release event: 6
- Watch event: 2
- Push event: 18
- Create event: 5
Last Year
- Release event: 6
- Watch event: 2
- Push event: 18
- Create event: 5
Packages
- Total packages: 1
-
Total downloads:
- cargo 5,870 total
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 8
- Total maintainers: 1
crates.io: packbed
pack a .bed into overlapping components
- Homepage: https://github.com/alejandrogzi/packbed
- Documentation: https://docs.rs/packbed/
- License: MIT
-
Latest release: 0.0.8
published about 1 year ago