如何比较R中的两个向量

时间:2014-09-25 07:31:53

标签: r

我想比较两个向量,但它不起作用,请告诉我如何比较两个向量:

x <- c(1,2,3,4)
y <- c(5,6,7,8)
if (x==y) print("same") else print("different")

3 个答案:

答案 0 :(得分:2)

使用all可以在这里工作。

> all(x==y)
[1] FALSE
> y1=c(5,6,7,8)
> all(y==y1)
[1] TRUE

修改 最好是使用isTRUE(all.equal(x,y))来避免回收

回收

> x=c(5,6,5,6)
> y=c(5,6)
> all(x==y)
[1] TRUE

更好的方式

> isTRUE(all.equal(x,y))
[1] FALSE
> isTRUE(all.equal(y,y1))
[1] TRUE
> x=c(5,6,5,6)
> y=c(5,6)
>isTRUE(all.equal(x,y))
[1] FALSE

答案 1 :(得分:0)

对于数组比较,allany是您的朋友。如果你真的不是指几何向量而是值数组,那么sort也是必要的:

> all(sort(x)==sort(y))

答案 2 :(得分:0)

尝试:

x <- c(1,2,3,4)
y <- c(5,6,7,8)
if(identical(x,y)) print("identical") else print("not identical")