如何在x中全部为FALSE时运行哪个(x)运行?

时间:2014-05-05 13:01:31

标签: r

> x<-c(FALSE,FALSE)
> which(x)
integer(0)
> which(x)==0
logical(0)
> x<-c(FALSE,TRUE)
> which(x)
[1] 2

在我的程序中,我不知道x是什么,x是逻辑向量,可能包含TRUE,如果它包含TRUE,则打印订单,如果它根本不包含TRUE,则打印0。

整数(0)与0不同?有什么区别?逻辑(0)的含义是什么?
当x中没有TRUE which(x)时,which(x)无法执行此操作。 我怎样才能实现目标?

1 个答案:

答案 0 :(得分:3)

您可以使用

检查向量x中的任何值是否为真
any(x)

而不是which()所以

if (any(x)) {
    #print order
} else {
    print(0)
}