1

给定两个向量:

x = c('a','b')
lookup = c('a','c','d','e','f')

测试中的每个元素x是否存在于lookup. 一种方法:

all(!is.na(match(x, lookup)))

我发现这个解决方案对于 R 来说有点冗长,想知道是否有更好/更短的版本。

4

2 回答 2

5

%in%做这个:

all(x %in% lookup)
## [1] FALSE
于 2013-10-10T18:32:01.210 回答
3

也可以使用setdiff。有关其他集合操作,请参见相关帮助页面。

setdiff(x,lookup)
[1] "b"
> as.logical(length( setdiff(x,lookup) ) )
[1] TRUE
于 2013-10-10T18:36:07.810 回答