R - арифметика с функцией пола создает невидимо неидентичные значения

looks_like_0.25 = 5.25 - floor(5.25)
print(looks_like_0.25)  # [1] 0.25
str(looks_like_0.25)    # num 0.25
print(looks_like_0.25 == 0.25)  # [1] TRUE

looks_like_0.11 = 5.11 - floor(5.11)
print(looks_like_0.11)  # [1] 0.11
str(looks_like_0.11)    # num 0.11
print(looks_like_0.11 == 0.11)  # [1] FALSE

Первый пример работает, как ожидалось, второй - нет. Почему?


person wale    schedule 11.09.2020    source источник
comment
Да, в некоторой степени (в основном не доверяю ==), но я все еще задаюсь вопросом, есть ли способ определить, что look_like_0.11 на самом деле не 0.11, не прибегая к использованию all.equal или чего-то подобного, или почему первый пример все еще работает.   -  person wale    schedule 11.09.2020