# bit v1.1-15.1

0

0th

Percentile

## A Class for Vectors of 1-Bit Booleans

True boolean datatype (no NAs), coercion from and to logicals, integers and integer subscripts; fast boolean operators and fast summary statistics. With 'bit' vectors you can store true binary booleans {FALSE,TRUE} at the expense of 1 bit only, on a 32 bit architecture this means factor 32 less RAM and ~ factor 32 more speed on boolean operations. Due to overhead of R calls, actual speed gain depends on the size of the vector: expect gains for vectors of size > 10000 elements. Even for one-time boolean operations it can pay-off to convert to bit, the pay-off is obvious, when such components are used more than once. Reading from and writing to bit is approximately as fast as accessing standard logicals - mostly due to R's time for memory allocation. The package allows to work with pre-allocated memory for return values by calling .Call() directly: when evaluating the speed of C-access with pre-allocated vector memory, coping from bit to logical requires only 70% of the time for copying from logical to logical; and copying from logical to bit comes at a performance penalty of 150%. the package now contains further classes for representing logical selections: 'bitwhich' for very skewed selections and 'ri' for selecting ranges of values for chunked processing. All three index classes can be used for subsetting 'ff' objects (ff-2.1-0 and higher).

## Functions in bit

 Name Description Summary Summaries of bit vectors Extract Extract or replace part of an bit vector c.bit Concatenating bit and bitwhich vectors bitwhich A class for vectors representing asymetric selections regtest.bit Regressiontests for bit LogicBit Boolean operators and functions for class bit as.bitwhich Coercing to bitwhich as.which Coercion to (positive) integer positions as.logical.bit Coercion from bit, bitwhich and ri to logical, integer, double bbatch Balanced Batch sizes repeat.time Adaptive timer chunk Chunked range index clone Cloning ff and ram objects as.bit Coercing to bit intrle Hybrid Index, C-coded utilities vecseq Vectorized Sequences is.bit Testing for bit, bitwhich and ri selection classes unattr Attribute removal ramsort Generics for in-RAM sorting and ordering physical Physical and virtual attributes length.bit Getting and setting length of bit, bitwhich and ri objects is.sorted Generics related to cache access repfromto Virtual recycling rlepack Hybrid Index, rle-pack utilities setattributes Attribute setting by reference ri Range index bit-package A class for vectors of 1-bit booleans bit_init Initializing bit masks No Results!