R中两个向量之间的差

R中两个向量之间的差,r,vector,diff,R,Vector,Diff,我有两个向量: a <- c(1, 1, 3, 4, 5, 7, 9) b <- c(2, 3, 4, 6, 8, 2) a您可以使用setdiff setdiff(b,a) #[1] 2 6 8 另一种方法是在% unique(b[! b %in% a]) #[1] 2 6 8 setdiff(1:3,2:4)results:>1forme expecte为1和4@stakowerflolsetdiff给出第一个与第二个的差值。如果你想要两者,那么你可能需要一个union和s

我有两个向量:

a <- c(1, 1, 3, 4, 5, 7, 9)
b <- c(2, 3, 4, 6, 8, 2)

a您可以使用
setdiff

setdiff(b,a)
#[1] 2 6 8

另一种方法是在%

unique(b[! b %in% a])
#[1] 2 6 8

setdiff(1:3,2:4)
results:>1forme expecte为1和4@stakowerflol
setdiff
给出第一个与第二个的差值。如果你想要两者,那么你可能需要一个union和setdiffHi@nico,
unique(b[!b%in%a)
在这个例子中非常有效。但是,请你看看为什么我在更改向量
a=c(4,2,3)
b=c(2,3)
时得到了
numeric(0)
答案。unique(b[!b%in%a)对我来说没有意义@Mayca您的输出是正确的。它显示b中的元素而不是a中的元素,a是一个空集。
unique(b[! b %in% a])
#[1] 2 6 8