Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 删除连续重复的值_R - Fatal编程技术网

R 删除连续重复的值

R 删除连续重复的值,r,R,有人知道如何删除不断重复的值吗?不仅仅是使用unique()函数重复值 例如,我想: 0,0,0,0,1,1,1,2,2,2,3,3,3,3,2,2,1,2 成为 0,1,2,3,2,1,2 不仅仅是 0,1,2,3 有没有一个词来形容这一点?我确信解决方案就在某个地方,我就是找不到它,因为我不知道它的名称。当与上一个值的差值不为零时保留一个值(并保留第一个值): x谢谢!它工作得很好。所以我猜这个词是连续的。真不敢相信我竟然忘了。我将很快删除此帖子。对不起,重复了:(@Robo您不应该

有人知道如何删除不断重复的值吗?不仅仅是使用unique()函数重复值

例如,我想:

0,0,0,0,1,1,1,2,2,2,3,3,3,3,2,2,1,2 
成为

0,1,2,3,2,1,2
不仅仅是

0,1,2,3

有没有一个词来形容这一点?我确信解决方案就在某个地方,我就是找不到它,因为我不知道它的名称。

当与上一个值的差值不为零时保留一个值(并保留第一个值):


x谢谢!它工作得很好。所以我猜这个词是连续的。真不敢相信我竟然忘了。我将很快删除此帖子。对不起,重复了:(@Robo您不应该删除:如果向量不是数字,此解决方案将失败。此解决方案也能很好地工作!谢谢您此问题已被标记为另一个问题的副本,而另一个问题已将此精确方法作为公认的解决方案。@snoram最有可能是mpalanco在发布答案时未将其标记为重复。@snoram是,抱歉,否need否决投票,正如zx8754所说,我没有看到它被标记为重复。如果它被标记为重复,我将无法发布答案。我应该删除我的答案吗?我的错误。抱歉。它显示它在3分钟前被标记为重复…但我明白这不是很多时间。
x <- c(0,0,0,0,1,1,1,2,2,2,3,3,3,3,2,2,1,2)
x[c(1, diff(x)) != 0]

# [1] 0 1 2 3 2 1 2
v <- c(0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 2, 2, 1, 2)
rle(v)$values
[1] 0 1 2 3 2 1 2