2013-08-02 114 views
2

all.equal()给出这些数据的“无效参数类型”错误。任何想法?“无效参数类型”错误。 R

>matrix1 
    1 2 3 4 5 
1 0 0 0.0 0 0.0 
2 1 0 0.0 0 0.0 
3 0 1 0.0 0 0.0 
4 0 0 0.5 0 0.5 
5 0 0 1.0 0 0.0 
>rowSums(matrix1) 
1 2 3 4 5 
0 1 1 1 1 
> !all.equal(as.vector(rowSums(matrix1)), as.vector(rep(1, nrow(matrix1))), check.attributes=FALSE) 
Error in !all.equal(as.vector(rowSums(matrix1)), as.vector(rep(1, : 
    invalid argument type 

回答

10

all.equal没有返回该错误,!是:

> !"" 
Error in !"" : invalid argument type 

这是因为all.equal不返回的逻辑值时所述两个对象不是大致相等。这在?all.equal的第一段中有记录,它建议您使用isTRUE(all.equal(...))

相关问题