比较两个匹配名称的字符向量

时间:2012-10-18 15:34:16

标签: r

我有两个具有不同名称和值集的字符向量:

x <- c("a", "b", "c", "d", "e")
names(x) <- c("foo", "bar", "baz", "qux", "grault")

y <- c("c", "a", "d", "b")
names(y) <- c("bar", "foo", "qux", "corge")

有没有办法比较xy,以便我们知道与名称bar对应的值不同,因为x.bar = "b"y.bar = "c" ?请注意,这些名字并未订购。我尝试了setdiffwhich(x != y),但没有人给我正确答案。谢谢!

1 个答案:

答案 0 :(得分:8)

你可以这样做:

x[intersect(names(x), names(y))] == y[intersect(names(x), names(y))]