当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R rle 游程长度编码


R语言 rle 位于 base 包(package)。

说明

计算向量中相等值游程的长度和值 - 或逆运算。

用法

rle(x)
inverse.rle(x, ...)

## S3 method for class 'rle'
print(x, digits = getOption("digits"), prefix = "", ...)

参数

x

rle() 的向量(原子,不是列表); inverse.rle() 的类 "rle" 的对象。

...

进一步的参数;这里忽略了。

digits

用于打印的有效位数,请参阅print.default

prefix

字符串,添加到每个打印行的前面。

细节

‘vector’ 在 is.vector 的意义上使用。

缺失值被视为与前一个值不相等,即使前一个值也缺失。

inverse.rle()rle() 的反函数,从运行中重建 x

rle() 返回 "rle" 类的对象,它是一个包含组件的列表:

lengths

包含每次运行长度的整数向量。

values

lengths 长度相同且具有相应值的向量。

inverse.rle() 返回一个原子向量。

例子

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)))

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Run Length Encoding。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。