在R中的字符串中查找顺序重复的索引

Bee*_*eba 4 string r

我有一个已转换为字符向量的字符串:

string <- c("A","A","A","C","G","G","C","C","T","T","T","T")
Run Code Online (Sandbox Code Playgroud)

我希望能够输出一个表,该表按出现的顺序显示连续字母的索引。例如:

letter start end
A 1 3
C 4 4
G 5 6
C 7 8
T 9 12
Run Code Online (Sandbox Code Playgroud)

我试着研究str_locate其他一些str函数,但是还没有弄清楚。任何帮助表示赞赏!

WeN*_*Ben 6

我会用cumsum之后rle

s=rle(string)
v=cumsum(rle(string)$lengths)
data.frame('var'=s$values,'start'=v+1-s$lengths,'end'=v)
  var start end
1   A     1   3
2   C     4   4
3   G     5   6
4   C     7   8
5   T     9  12
Run Code Online (Sandbox Code Playgroud)