我想在which
中使用R
来复制数组的一部分。但是,似乎which
跳过了重复元素。这是一个例子:
a <- c(1,2,3,4,1,2,2,3)
b <- c(1,2)
a <- a[which(a==b)]
a
[1] 1 2 1 2
我希望输出如下:
a
[1] 1 2 1 2 2
有什么想法吗?
答案 0 :(得分:2)
我想你想要%in%
。当TRUE
的值也在a
时,它会返回逻辑b
。然后,如果您对其进行矢量化,则结果是a
中也包含b
的值。
> a <- c(1,2,3,4,1,2,2,3)
> b <- c(1,2)
> a[a %in% b]
[1] 1 2 1 2 2