如何在一行中找到具有重复值的向量?

时间:2016-10-26 22:07:25

标签: r

我有很多载体,看起来像这样:

qemu-system-i386.exe: -audio: invalid option

在所有这些载体中,具有连续重复三次的值。

我需要以某种方式识别这些重复。主要条件是重复一个接一个的值。

Duplicated()无济于事,至少在基地。

这些载体的定义是必要的,然后才能将它们移除。

适合我工作的载体。

a <- c(0,0,0,1,1)
b <- c(1,0,0,0,1)
c <- c(0,0,1,1,1)

不正确的载体。

 d <- c(1,0,1,0,0)

1 个答案:

答案 0 :(得分:0)

您可能需要查看基本软件包中的rlerleid中的data.table函数。

rle(c(0,0,0,1,1))
Run Length Encoding
 lengths: int [1:2] 3 2
 values : num [1:2] 0 1

library(data.table)
rleid(c(0,0,0,1,1))
[1] 1 1 1 2 2

两者都将查看相同数字的运行。 rle函数返回长度和值的列表,rleid函数返回每次序列中的数字更改时向上计数的向量。