如何在另一个向量上创建索引向量?

时间:2014-04-17 09:59:58

标签: r seq rep

我试图根据另一个向量创建一个索引向量。这是源向量:

a <- c("A", "A", "B", "C", "D", "E", "E", "E")

并且生成的索引向量应如下所示:

x <- c(1, 2, 1, 1, 1, 1, 2, 3)

我试过这个,但这不会产生正确的结果:

a <- c("A", "A", "B", "C", "D", "E", "E", "E")
rle.a <- rle(a)
m <- max(rle.a$lengths)
rep(1:m, each=rle.a$lengths)

如何进行?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案:

a <- c("A", "A", "B", "C", "D", "E", "E", "E")
rle.a <- rle(a)
sequence(rle.a$lengths)