小数点后的噪音(R/切割小数点)

小数点后的噪音(R/切割小数点),r,R,我是R的初学者,我读过一些相关问题,但我仍然有以下问题: 我有两个数字=>0.6942181641427924709831和0.6942181641427929150723。第一个是一些计算的结果,第二个是给定/定义的。我必须处理这些数字,但它们必须相等(精确)!我刚读到关于R。。。也许这里就是这样 那么,我能把数字削减到小数点后第15位吗?四舍五入不起作用,因为它不会改变数字本身,只会改变R显示的内容 非常感谢你们的回答 您可以通过检查其差值的绝对值是否低于某个阈值来进行这种“几乎相等”的比较

我是R的初学者,我读过一些相关问题,但我仍然有以下问题: 我有两个数字=>0.6942181641427924709831和0.6942181641427929150723。第一个是一些计算的结果,第二个是给定/定义的。我必须处理这些数字,但它们必须相等(精确)!我刚读到关于R。。。也许这里就是这样

那么,我能把数字削减到小数点后第15位吗?四舍五入不起作用,因为它不会改变数字本身,只会改变R显示的内容

非常感谢你们的回答

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

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

在这种精度水平上的精确相等是一个梦想,或者至少需要特殊的工具。请参阅常见问题7.31,并按照戈德堡文档的链接进行操作。为什么数字必须正好等于22个有效数字?
all.equal(x, y)
# [1] TRUE