Expand description
The io module of bustools
Deals with reading and writing busfiles. The most important components are:
- BusRecord: a single record of a Busfile, containing CB/UMI/EC/COUNT
- BusFolder: representing the directory structure of kallisto quantification
- BusReader: to iterate over Records of a busfile
- BusWriter: writing records to busfile
§Example
let bus = BusReader::new("/tmp/some.bus");
let params = BusParams {cb_len: 16, umi_len: 12};
let mut writer = BusWriter::new("/tmp/out.bus", params);
for record in bus{
writer.write_record(&record);
}
Structs§
- An archived
BusRecord
- Represents the standard file structure of kallisto quantification:
- Header of a busfile, as specified by kallisto the only things that are variable are:
- Main reader for Busfiles Allows to iterate over the BusRecords in the file
- Basic unit of a busfile as created by kallisto. Represents a single scRNAseq molecule, CB/UMI/EC and COUNT
- The resolver for an archived
BusRecord
- Writing BusRecords into a File, using Buffers needs the Header of the busfile to be specified (length of CB and UMI)
Constants§
Traits§
- A marker trait for iterators over CB/UMI/gene_EC iterators to create an iterator compatible with this framework, just implement the usual iterator trait (giving the next() function) and also tag the iterator with CUGIterator:
impl CUGIterator for Dummy {}
Functions§
- group a list of records by their CB/UMI (i.e. a single molecule)