我有两个具有不同名称和值集的字符向量:
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")
有没有办法比较x
和y
,以便我们知道与名称bar
对应的值不同,因为x.bar = "b"
和y.bar = "c"
?请注意,这些名字并未订购。我尝试了setdiff
和which(x != y)
,但没有人给我正确答案。谢谢!
答案 0 :(得分:8)
你可以这样做:
x[intersect(names(x), names(y))] == y[intersect(names(x), names(y))]