在 R 中使用和/或运算符

机器算法验证 r
2022-03-24 08:41:51

在R中,有什么区别:

if(x>2 & x<3) ...

if(x>2 && x<3) ...

相似地:

if(x<2 | x>3) ...

if(x<2 || x>3) ...
1个回答

请参阅?"&":单个版本进行元素比较(当您对两个相同长度的向量进行逻辑运算时,例如,如果在您的示例中 x<-c(1.5,3.5)。另一个版本就像 C++ 或 java 的 && 一样工作:它只查看每个向量的第一个元素(这通常是一个意想不到的缺点),但以一种通常更好的执行方式:它从左到右查看,并且只要至少有一个值为假,它就知道不再看看其余的。

因此,如果您知道,在您的示例中 x<-6(无论如何,只有一个值),您最好使用 &&,否则,请始终使用 &。