rle

0th

Percentile

Run Length Encoding

Compute the lengths and values of runs of equal values in a vector -- or the reverse operation.

Keywords
manip
Usage
rle(x)
inverse.rle(x, …)

# S3 method for rle print(x, digits = getOption("digits"), prefix = "", …)

Arguments
x

a vector (atomic, not a list) for rle(); an object of class "rle" for inverse.rle().

further arguments; ignored here.

digits

number of significant digits for printing, see print.default.

prefix

character string, prepended to each printed line.

Details

‘vector’ is used in the sense of is.vector.

Missing values are regarded as unequal to the previous value, even if that is also missing.

inverse.rle() is the inverse function of rle(), reconstructing x from the runs.

Value

rle() returns an object of class "rle" which is a list with components:

lengths

an integer vector containing the length of each run.

values

a vector of the same length as lengths with the corresponding values.

inverse.rle() returns an atomic vector.

Aliases
  • rle
  • inverse.rle
  • print.rle
Examples
library(base) # NOT RUN { x <- rev(rep(6:10, 1:5)) rle(x) ## lengths [1:5] 5 4 3 2 1 ## values [1:5] 10 9 8 7 6 z <- c(TRUE, TRUE, FALSE, FALSE, TRUE, FALSE, TRUE, TRUE, TRUE) rle(z) rle(as.character(z)) print(rle(z), prefix = "..| ") N <- integer(0) stopifnot(x == inverse.rle(rle(x)), identical(N, inverse.rle(rle(N))), z == inverse.rle(rle(z))) # }
Documentation reproduced from package base, version 3.5.2, License: Part of R 3.5.2

Community examples

Looks like there are no examples yet.