runs {vctrs} | R Documentation |
Runs
Description
-
vec_identify_runs()
returns a vector of identifiers for the elements ofx
that indicate which run of repeated values they fall in. The number of runs is also returned as an attribute,n
. -
vec_run_sizes()
returns an integer vector corresponding to the size of each run. This is identical to thetimes
column fromvec_unrep()
, but is faster if you don't need the run keys. -
vec_unrep()
is a generalizedbase::rle()
. It is documented alongside the "repeat" functions ofvec_rep()
andvec_rep_each()
; look there for more information.
Usage
vec_identify_runs(x)
vec_run_sizes(x)
Arguments
x |
A vector. |
Details
Unlike base::rle()
, adjacent missing values are considered identical when
constructing runs. For example, vec_identify_runs(c(NA, NA))
will return
c(1, 1)
, not c(1, 2)
.
Value
For
vec_identify_runs()
, an integer vector with the same size asx
. A scalar integer attribute,n
, is attached.For
vec_run_sizes()
, an integer vector with size equal to the number of runs inx
.
See Also
vec_unrep()
for a generalized base::rle()
.
Examples
x <- c("a", "z", "z", "c", "a", "a")
vec_identify_runs(x)
vec_run_sizes(x)
vec_unrep(x)
y <- c(1, 1, 1, 2, 2, 3)
# With multiple columns, the runs are constructed rowwise
df <- data_frame(
x = x,
y = y
)
vec_identify_runs(df)
vec_run_sizes(df)
vec_unrep(df)