相关疑难解决方法(0)

查找运行/连续值的开始和结束位置/索引

问题:给定原子矢量,找到矢量中运行的起始和结束索引.

运行示例向量:

x = rev(rep(6:10, 1:5))
# [1] 10 10 10 10 10  9  9  9  9  8  8  8  7  7  6
Run Code Online (Sandbox Code Playgroud)

输出来自rle():

rle(x)
# Run Length Encoding
#  lengths: int [1:5] 5 4 3 2 1
#  values : int [1:5] 10 9 8 7 6
Run Code Online (Sandbox Code Playgroud)

期望的输出:

#   start end
# 1     1   5
# 2     6   9
# 3    10  12
# 4    13  14
# 5    15  15
Run Code Online (Sandbox Code Playgroud)

rle类似乎不提供此功能,但类Rle和函数rle2 …

r vector run-length-encoding

8
推荐指数
2
解决办法
1384
查看次数

获取值的运行的开始和结束索引

我有一个矢量:

a <- c(1, 1, 0, 0, 1, 2, 0, 0)
Run Code Online (Sandbox Code Playgroud)

我想得到每次运行相等值的开始和结束索引:

number start  end
0        3     4
0        7     8
1        1     2
1        5     5
2        6     6
Run Code Online (Sandbox Code Playgroud)

r sequence

5
推荐指数
1
解决办法
353
查看次数

标签 统计

r ×2

run-length-encoding ×1

sequence ×1

vector ×1