我正在尝试计算两个向量之间的匹配数:c(1,2,1)
和c(2,2,2)
,目标是返回1
。只有第二个位置在两个向量之间匹配。我提出的每个解决方案都有一个循环。有人可以建议一个R函数来做这个,而不是循环吗?
答案 0 :(得分:3)
由于您具有相等的长度向量,因此可以使用==
来确定匹配项。
c(1, 2, 1) == c(2, 2, 2)
# [1] FALSE TRUE FALSE
现在,由于TRUE
和FALSE
的数字表示分别为1和0,因此结果的总和将给出匹配数。
sum(c(1, 2, 1) == c(2, 2, 2))
# [1] 1