I'm trying to compare two numbers in R as a part of a if-statement condition:
(a-b) >= 0.5
In this particular instance, a = 0.58 and b = 0.08... and yet (a-b) >= 0.5 is false.  I'm aware of the dangers of using == for exact number comparisons, and this seems related:
(a - b) == 0.5) is false, while 
all.equal((a - b), 0.5) is true.
The only solution I can think of is to have two conditions: (a-b) > 0.5 | all.equal((a-b), 0.5).  This works, but is that really the only solution?  Should I just swear off of the = family of comparison operators forever?
Edit for clarity: I know that this is a floating point problem.  More fundamentally, what I'm asking is: what should I do about it?  What's a sensible way to deal with greater-than-or-equal-to comparisons in R, since the >= can't really be trusted?
 
     
     
     
     
     
     
     
     
    