[英]Recursive %in% function in R?
我确信这是一个多次被问到的简单问题,但这是我发现很难知道要搜索哪些术语以便找到解决方案的时候之一。 我有一个简单的列表列表,如下面的列表:
sets <- list(S1=NA, S2=1L, S3=2:5)
> sets
$S1
[1] NA
$S2
[1] 1
$S3
[1] 2 3 4 5
我有一个标量val
可采取任何整数的值在sets
(但绝不会NA
)。 假设val <- 4
- 那么,返回对应于set
中每个列表的TRUE / FALSE向量的快速方法是什么,其中TRUE表示val
在该列表中,FALSE表示不是? 在这种情况下,我想要的东西
[1] FALSE FALSE TRUE
我希望有一些递归形式的%in%
但我没有运气搜索它。 谢谢!
像这样:
sapply(sets, `%in%`, x = val)
# S1 S2 S3
# FALSE FALSE TRUE
我不得不看的帮助页面?"%in%"
找出的第一个参数%in%
被命名为x
。 为了你的好奇心(这里不需要),第二个被命名为table
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.