我什至都很难说出这个问题——
我认为如果我只是展示我的目标会更容易:举个例子:
require(tidyverse)
df <- data.frame(planet = rep(c("mars", "jupiter"), each = 10),
date = seq(as.Date("2020-01-01"), as.Date("2020-01-10"), length.out = 10) %>% rep(2),
someNumbers = c(1:10, 6:15)
)
df
Run Code Online (Sandbox Code Playgroud)
planet date someNumbers
1 mars 2020-01-01 1
2 mars 2020-01-02 2
3 mars 2020-01-03 3
4 mars 2020-01-04 4
5 mars 2020-01-05 5
6 mars 2020-01-06 6
7 mars 2020-01-07 7
8 mars 2020-01-08 8
9 mars 2020-01-09 9
10 mars 2020-01-10 10
11 jupiter 2020-01-01 6
12 jupiter 2020-01-02 7
13 jupiter …Run Code Online (Sandbox Code Playgroud) 假设我有一个数字向量 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)
提前谢谢了。