在R编程中,any和|有什么区别? (或)布尔运算符?

In R programming, what is the difference between the any and | (or) Boolean operator?

所以我们在这里不是说同样的话吗?

使用一个比另一个有什么优势吗?

| 是矢量化的——它 returns 与最长输入长度相同的结果,如果需要将回收。

any 查看长度为 1 的所有输入和 returns 结果。

|| 仅进行一次比较,使用其输入的第一个元素而不考虑其长度,returns 长度为 1 的结果。

x = c(FALSE, TRUE, FALSE)
y = c(FALSE, FALSE, FALSE)

any(x, y)
# [1] TRUE
## There's a TRUE in there somewhere

x | y
# [1] FALSE  TRUE FALSE
## Only the 2nd index of the vectors contains a TRUE

x || y
# [1] FALSE
## The first position of the vectors does not contain a TRUE.

如果输入的长度都是1,那么x1 | x2 | x3等价于x1 || x2 || x3等价于any(x1, x2, x3)。否则不予保证。