R /小数位的小数位噪声

时间:2014-12-11 15:09:11

标签: r

我是R的初学者,我已经阅读了一些相关的问题,但我仍然有以下问题: 我有两个数字=> 0.6942181641427924709831和0.6942181641427929150723。第一个是计算的结果,第二个是给定/定义的。我必须使用这些数字,但它们必须相等(确切)!我刚读过关于R中的噪音...也许就是这种情况?

所以我可以在例如它们仍然相等的第15个小数位?舍入不起作用,因为它不会改变数字本身,只会改变R显示的内容......

非常感谢你们的回答!

1 个答案:

答案 0 :(得分:2)

你可以通过检查它们的差异的绝对值是否低于某个阈值来进行这种“几乎相等”的比较。

x <- 0.6942181641427924709831
y <- 0.6942181641427929150723
x == y
# [1] FALSE
abs(x-y) < 1e-15
# [1] TRUE

all.equal函数已经具有内置容差,这使得这很方便:

all.equal(x, y)
# [1] TRUE