通过给定的值分布创建向量

Create vector by given distibution of values

假设我有一个向量 a = (1,3,4)。 我想用 [1,length(a)] 范围内的整数创建新向量。但是第 i 个数字应该出现 a[i] 次。

对于向量a我想得到:

(1,2,2,2,3,3,3,3)

你能解释一下如何在没有几个混乱的连接的情况下实现这个操作吗?

你可以试试rep

rep(seq_along(a), a)
#[1] 1 2 2 2 3 3 3 3

数据

a <- c(1,3,4)