在 R 中不同时间复制向量中的每个元素

Nom*_*420 2 r vector rep

假设我有一个数字向量 v

v <- 1:5
Run Code Online (Sandbox Code Playgroud)

我想要 rep

v[1]通过v[1]倍。

v[2]v[2]时候……等等……

所需的输出是:

1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 
Run Code Online (Sandbox Code Playgroud)

以下不起作用。有什么想法吗?

rep(v, each = function(x) v[x]) 
Run Code Online (Sandbox Code Playgroud)

提前谢谢了。

akr*_*run 6

我们可以rep在自己身上使用

rep(v, v)
Run Code Online (Sandbox Code Playgroud)

如果我们想指定参数,请使用 times

rep(v, times = v)
Run Code Online (Sandbox Code Playgroud)

each不会采取匿名函数和只需要一个长的向量1,根据?rep

每个 - 非负整数。x 的每个元素每次都重复。其他输入将被强制为整数或双向量并采用第一个元素。如果不适用或无效,则视为 1。