#single-cell #bus #kallisto #rna-seq #scrnaseq #file-format

bustools

Interacting with the kallisto/bus format of scRNAseq data

13 releases (7 breaking)

0.14.1 Jun 27, 2024
0.13.1 Feb 19, 2024
0.9.1 Oct 6, 2023
0.7.0 Jun 18, 2023

#49 in Biology

Download history 277/week @ 2024-06-27 8/week @ 2024-07-04 1/week @ 2024-08-15 2/week @ 2024-09-12 2/week @ 2024-09-19 48/week @ 2024-09-26 12/week @ 2024-10-03 2/week @ 2024-10-10

65 downloads per month
Used in 2 crates

GPL-3.0-or-later

245KB
4K SLoC

Rustbustools

Rust library to interact with the kallisto/bus format of scRNAseq data (see bustools). At this point, the package is pretty mature, but there might be some minor features missing compared to the original bustools.

There's also a CLI mimicking bustools, see bustools_cli

Examples

For more examples, see the rust-docs.

Iterating a bus file

use bustools::io::{BusReader};
let bus = BusReader::new("/tmp/some.bus");
for record in bus {
    // record.CB, record.UMI ...
}

Iterating a bus file by cell

use bustools::io::BusReader;
use bustools::iterators::CellGroupIterator; //need to bring that trait into scope

let breader = BusReader::new("/path/to/some.bus");
for (cb, vector_of_records) in breader.groupby_cb() {
    // Example: the number of records in that cell
    let n_molecules: usize = vector_of_records.len();
}

Dependencies

~10–19MB
~297K SLoC