Skip to main content

stream_mapped_selection

Function stream_mapped_selection 

Source
pub fn stream_mapped_selection(
    data: &dyn SparseIo<IndexIter = Vec<usize>>,
    selected_columns: &[usize],
    rows: Option<&RowMap>,
    out_row_names: &[Box<str>],
    out_col_names: &[Box<str>],
    file_out: &str,
    backend_out: &SparseIoBackend,
) -> Result<(usize, usize, usize)>
Expand description

Stream the columns selected_columns of data, in that order, into a fresh backend at file_out, its rows renumbered (dropped, reordered) by rows when given, with the given names and data’s metadata. Returns the output’s (rows, columns, non-zeros).

The survivors are never materialised: they flow through the validated streaming writer in byte-budgeted slabs, cut from the resident indptr.

§Errors

If a selected column is past the data’s columns, or rows does not map the data’s rows onto distinct output rows; file_out is then not created.