在列表中拆分函数并省略一些观察结果

split function in lists and leave out some observations

这是我的代码:

cpi <- c(100:200)
cpi_sp <- seq_along(cpi) 
cpis <- list(cpi, c(100:200), c(100:200), c(100:200))
cpis_y <- lapply(cpis, function(x) split(x, ceiling(cpi_sp/12)) )

我想要 split resp. ceiling 首先做好他们的工作,例如4 次观察,然后总是接下来的 12 次观察。我知道有一种简单的方法,但直到现在我才找到它。感谢您的帮助!

akrun 发布的答案是:

lapply(cpis, function(x) split(x, c(rep(0, 4), ceiling(cpi_sp[-(1:4)]/12))))