1
我有一个整数向量: a <- c(1,1,3,1,4)
其中a中的每个元素表示其索引应该在新向量中复制多少次。通过索引复制向量元素
所以得到的载体应该是: b <- c(1,2,3,3,3,4,5,5,5,5)
什么是做到这一点的最有效方法是什么?
我有一个整数向量: a <- c(1,1,3,1,4)
其中a中的每个元素表示其索引应该在新向量中复制多少次。通过索引复制向量元素
所以得到的载体应该是: b <- c(1,2,3,3,3,4,5,5,5,5)
什么是做到这一点的最有效方法是什么?
例如使用rep
:
rep(seq_along(a),a)
1 2 3 3 3 4 5 5 5 5
另一个效率较低的选择是使用inverse.rle
:
inverse.rle(list(lengths=a,values=seq_along(a)))
[1] 1 2 3 3 3 4 5 5 5 5