首页 > 解决方案 > 根据 R 中另一个向量中定义的数值位置查找向量的元素

问题描述

假设我有以下两个向量。定义中的元素ll之间的数量和边界线。long

例如,这里基于ll,其中的前两个元素long是一个单独的集合,然后后面的一个元素是一个单独的集合,依此类推。

我想知道如何自动(也许作为一个sapply)子集long基于ll

ll <- c(2, 1, 2, 3)
long <- c(F, F, F, F, T, T, F, T)

标签: rloopssubsetlapplysapply

解决方案


您可以使用(输出)split分割。rep(seq_along(ll), ll)1 1 2 3 3 4 4 4

split(long, rep(seq_along(ll), ll))

$`1`
[1] FALSE FALSE

$`2`
[1] FALSE

$`3`
[1] FALSE  TRUE

$`4`
[1]  TRUE FALSE  TRUE

推荐阅读