R中的数字比较难度
我试图比较R中的两个数字作为if语句条件的一部分:
(a-b) >= 0.5
在这个特定的例子中,a = 0.58和b = 0.08 ......但仍然(a-b) >= 0.5
是假的。我知道使用==
确切数字比较的危险,这似乎有关:
(a - b) == 0.5)
是假的,而
all.equal((a - b), 0.5)
是真的。
我能想到的唯一解决方案是有两个条件:(a-b) > 0.5 | all.equal((a-b), 0.5)
。这有效,但这真的是唯一的解决方案吗?我应该=
永远宣誓比较运营商的家庭吗?
为清晰起见编辑:我知道这是一个浮点问题。更重要的是,我要问的是:我该怎么做呢?什么是处理R中大于或等于比较的合理方法,因为>=
它不能真正被信任?
饮歌长啸
MYYA
呼如林