# bit v1.1-14

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