我有两个向量:
vec1 <- c(1,0,1,1,1)
vec2 <- c(1,1,0,1,1)
Run Code Online (Sandbox Code Playgroud)
向量在位置1,4和5处具有相同的元素.
如何在考虑位置的2个向量中返回重叠的元素数量?所以,我想在这里返回3号.
测试相等性,然后sum,您可能想要排除NAs:
sum(vec1==vec2, na.rm=TRUE)
Run Code Online (Sandbox Code Playgroud)
编辑
排除0==0匹配,添加如下排除:
sum(vec1==vec2 & vec1!=0, na.rm=TRUE)
Run Code Online (Sandbox Code Playgroud)
感谢@CarlWitthoft
或者,如果您只有1和0,那么:
sum((vec1+vec2)==2, na.rm=TRUE)
Run Code Online (Sandbox Code Playgroud)