举例来说
x=c(123,456,897,243,651,852,964,357,555)
y=c(651,852,111)
我想要从 x 中 筛选出 y 中有的变量 651 852 111
111没有出现在 x 中 所以不用显示出来
基本上我想要的就是位置 5,6 ( 651=x[5] 852=x[6] )
目前我的想法是
#先用布林值去判断哪个为true
#再去找位置
bo = as.integer( x == y[1] )
bo_matr = matrix(bo)
map =
which(apply(bo_matr, 1L,function(row) all(row == 1)))
这样就很清楚知道是 x 中的 5,6 是我要的 (因为 true=1 )
但是这样很花时间
因为我 x y 各有上百万笔row
每次都百万笔去做布林比对
非常没效率
所以想问问看有没有类似函数可以帮我做筛选
谢谢