5

如果你有一个字符串向量并且你想知道哪个匹配。使用 %in% 很简单。

x <- c("red","blue","green")
y <- c("yellow","blue","orange")

which(x %in% y) # Literally, which X are in Y.

但是相反的情况呢,你想在哪里找到哪些 X 不在 Y 中?

4

2 回答 2

8

我喜欢的一种简洁方式(我从@joran,iirc 学到的)是:

`%nin%` <- Negate(`%in%`)
which(x %nin% y)
[1] 1 3    
于 2013-04-05T22:49:53.407 回答
5

Doing%in%返回一个真假向量。使用感叹号将使那些 Ts 和 Fs 转过来,并且通过将所有内容包装进去which将为您提供索引。

> which(!x %in% y)
[1] 1 3
> which(x %in% y)
[1] 2
于 2013-04-05T22:48:56.103 回答