factor256 {factor256}R Documentation

Factors of fewer than 256 elements

Description

Whereas base R's factors are based on 32-bit integer vectors, factor256 uses 8-bit raw vectors to minimize its memory footprint.

Usage

factor256(x, levels = NULL)

recompose256(f)

relevel256(x, levels)

## S3 method for class 'factor256'
levels(x)

is.factor256(x)

isntSorted256(x, strictly = FALSE)

as_factor(x)

factor256_in(x, tbl)

factor256_notin(x, tbl)

factor256_ein(x, tbl)

factor256_enotin(x, tbl)

tabulate256(f)

rank256(x)

order256(x)

unique256(x)

tabulate256_levels(x, nmax = NULL, dotInterval = 65535L)

Arguments

x

An atomic vector with fewer than 256 unique elements.

levels

An optional character vector of or representing the unique values of x.

f

A raw vector of class factor256.

strictly

If TRUE then if x[i] == x[j] and i != j then x is not sorted.

tbl

The table of values to lookup in f. May be a factor256 class but will be implicitly converted based on the levels of f.

nmax, dotInterval

(tabulate256_levels only). Every dotInterval iterations through x check number of unique elements detected so far. If any count exceeds nmax the rest of the vector is ignored.

Value

factor256 is a class based on raw vectors. Values in x absent from levels are mapped to 00.

In the following list, o is the result.

factor256

A raw vector of class factor256.

recompose256

is the inverse operation.

factor256_e?(not)?in

A logical vector the same length of f, o[i] = TRUE if f[i] is among the values of tbl when converted to factor256. _notin is the negation. The factor256_e variants will error if none of the values of tbl are present in f.

tabulate256

Takes a raw vector and counts the number of times each element occurs within it. It is always length-256; if an element is absent it will have value zero in the output.

tabulate256_levels

Similar to tabulate256 but with optional arguments nmax, dotInterval.

as_factor

Converts from factor256 to factor.

order256

Same as order but supports raw vectors. order256(x)

rank256

Same as rank with ties.method = "first" but supports raw vectors.

unique256

Unique elements of.

Examples

f10 <- factor256(1:10)

fletters <- factor256(rep(letters, 1:26))
head(factor256_in(fletters, "g"))
head(tabulate256(fletters))
head(recompose256(fletters))

gletters <- factor256(rep(letters, 1:26), levels = letters[1:25])
tail(tabulate256(gletters))
tabulate256_levels(gletters, nmax = 5L, dotInterval = 1L)



[Package factor256 version 0.1.0 Index]