如何使用R语言找到向量a和b中的共同元素,其中a=c("a", "b"),b=c("b", "c"),涉及IT技术。

4

我需要找到向量a和b中的共同元素,并将这些共同元素放入一个新的向量c中,然后计算向量c中的元素数量(即在此情况下为1个共同元素的数量)。


2
intersect() 和 length()。请不要把结果命名为“c”,否则会覆盖函数 c()。 - marc1s
2个回答

6

这是您正在寻找的吗?

a <- LETTERS[c(1:5, 10:15)]
b <- LETTERS[1:10]

intersect(a,b)
[1] "A" "B" "C" "D" "E" "J"

length(intersect(a,b))
[1] 6

0
  • 如果您想在ab中保留共同元素的重复项,可以使用包中的vintersect函数,如下所示:
vecsets::vintersect(a,b)
# [1] "A" "A" "B" "B" "C" "D" "E"

否则,来自基础R的intersect将为您提供唯一的共同元素,即:
intersect(a,b)
# [1] "A" "B" "C" "D" "E"

数据

a <- c("A", "B", "C", "D", "E", "A", "B", "C", "D", "E")
b <- c("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "A", "B")

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接