Expand description
The cbsrs
crate implements the Circular Binary Segmentation algorithm (1)
based on code from (2).
It exposes an extremely simple API, as a trait which operates only on
Vec<usize>
.
use cbsrs::CBS;
let steps: Vec<usize> = vec![1, 1, 1, 3, 3, 2, 1, 2, 3, 300, 310, 321, 310, 299];
let shuffles = 1000;
let p = 0.05;
println!("{:?}", steps.cbs(shuffles, p));
This implementation omits the ‘validation’ algorithm seen in other implementations.
- Olshen, Adam B., et al. “Circular binary segmentation for the analysis of array‐based DNA copy number data.” Biostatistics 5.4 (2004): 557-572.
- https://github.com/jeremy9959/cbs/blob/master/cbs.py
Structs§
Enums§
- Error
Kind - The kind of error possible, in this case we only have one possibility.
Traits§
- CBS
- The
CBS
trait provides a single method,cbs
, which executes the circular binary segmentation algorithm.
Functions§
- cumsum
- The cumulative sum of a generic vector, where elements implement the add trait.