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

>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

最佳答案

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

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

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

关于r - all.equal 的 "invalid argument type"错误。电阻,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18025797/

10-12 17:13