根据R中的长度从列表中选择元素

根据R中的长度从列表中选择元素,r,list,element,R,List,Element,我有一个27万个元素的列表,每个元素的长度为165或166。我想将长度为165的元素隔离到一个单独的数据集中。这是否有效: set.seed(1) mylist <- list(sample(1:10, 165, T), sample(1:10, 166, T), sample(1:10, 165, T), sample(1:10, 166, T)) l1 <- mylist[sapply(mylist, function(x) length(x) == 165)] l2 <

我有一个27万个元素的列表,每个元素的长度为165或166。我想将长度为165的元素隔离到一个单独的数据集中。

这是否有效:

set.seed(1)
mylist <- list(sample(1:10, 165, T), sample(1:10, 166, T), sample(1:10, 165, T), sample(1:10, 166, T))


l1 <- mylist[sapply(mylist, function(x) length(x) == 165)]
l2 <- mylist[sapply(mylist, function(x) length(x) == 166)]
set.seed(1)

mylist尝试使用
长度

result <- data2[lengths(data2) == 165]
结果我们可以使用:

data2[sapply(mylist, length) == 165]
data2[sapply(mylist, length) == 165]