为什么as.numeric(1)==(3 | 4)的计算结果为TRUE?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (43)

我想用做一个简单的对比h == 1 | 2,其中h可能是1和4之间的整数,它没有工作。

我可以理解为什么

1 == 2 | 4 TRUE

甚至为什么

1 == (2 | 4) TRUE

但为什么以所有合理和理智的名义呢?

as.numeric(1)==(2 | 4)

要么

1L ==(2 | 4)

要么

3 == 2 | 4

评估为

TRUE

我怎样才能让R告诉我是否1 is equal to 2 or 4会得到FALSE

提问于
用户回答回答于
用户回答回答于

运行2|4TRUE。这就是你比较时得到TRUE的原因。

扫码关注云+社区

领取腾讯云代金券