Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 计算两个向量中相同位置相同元素的数量_R - Fatal编程技术网

R 计算两个向量中相同位置相同元素的数量

R 计算两个向量中相同位置相同元素的数量,r,R,我有两个向量: set.seed(12) a<-sample(c(0,1),10,replace=T) b<-sample(c(0,1),10,replace=T) > a [1] 0 1 1 0 0 0 0 1 0 0 > b [1] 0 1 0 0 0 0 0 1 1 0 set.seed(12) a b [1] 0 1 0 0 0 0 0 1 1 0 我想计算两个向量中匹配的元素数 因此,在上述情况下: 以下元素匹配:1,2,4,5,6,7,8,10

我有两个向量:

set.seed(12)

a<-sample(c(0,1),10,replace=T)

b<-sample(c(0,1),10,replace=T)

> a
 [1] 0 1 1 0 0 0 0 1 0 0
> b
 [1] 0 1 0 0 0 0 0 1 1 0
set.seed(12)
a b
[1] 0 1 0 0 0 0 0 1 1 0
我想计算两个向量中匹配的元素数

因此,在上述情况下:

以下元素匹配:1,2,4,5,6,7,8,10


我不能用集合运算符来实现这一点,因为我对公共元素不感兴趣,但对它们的位置也不感兴趣。

尝试使用
which
=

which(a==b)
#[1]  1  2  4  5  6  7  8 10
以@David Arenburg为例

 set.seed(12)
 a <- sample(c(0,1),10,replace=TRUE)
 b <- sample(c(0,1),10,replace=TRUE)
 c <- sample(c(0,1),10,replace=TRUE) # added

 which(rowSums(cbind(a,b,c)==a)==3)
#[1] 1 2 5 6
set.seed(12)

a@Andrie抱歉,我提前几秒钟到达:-)如果目标真的是计算两个向量中匹配的元素数,那么让我们建议做
sum(a==b)
而不是
length(a==b))。
@Pascal非常感谢编辑,我在复制粘贴时没有注意到这一点是我的错。