哪个元素在列表中包含1

问题描述 投票:1回答:1

我有一个数字列表,如下所示:

 sets <- lapply(1:5, function(x) combn(5,x))

我想在列表sets中找到包含1(然后是2,3,4和5)的元素。此列表包含x in x的组合,x = 1,2,3,4,5。我想检查这些组合中的哪一个包含1。

例如,对于列表sets,第一个包含它,但第二个到第五个不包含,第六个到第九个包含它,等等。所以我想得到一个指示这个的向量:TRUE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE ...

r list
1个回答
3
投票

通过基地R的想法可以是,

unlist(lapply(sets, function(i) colSums(i == 1) > 0))

这使

[1]  TRUE FALSE FALSE FALSE FALSE  TRUE  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE FALSE  TRUE  TRUE  TRUE  TRUE  TRUE  TRUE
[22] FALSE FALSE FALSE FALSE  TRUE  TRUE  TRUE  TRUE FALSE  TRUE
© www.soinside.com 2019 - 2024. All rights reserved.