使用哪个条件与使用简单条件

Using which condition vs using simple condition

使用 which 或简单条件过滤对象的最佳方式是什么?

x[-which(x > 0)]x[x <= 0]一样吗?有没有输出不一样的情况?

有些情况下 -which 会给出不正确的结果

> x <- 1:5
> x[-which(x > 5)]
integer(0)
> x[x <=5]
[1] 1 2 3 4 5

无错误的方法是否定 (!)

> x[!x > 5]
[1] 1 2 3 4 5