如R FAQ所述,可以用R的数字类型精确表示的唯一数字是
所有其他数字在内部四舍五入到(通常)53二进制数字精度。
话虽如此,如何说一个给定的数字可以准确地存储在R的数字类型中,还是应该舍入?或者换句话说,如何说一个数字是分母的分数是2的幂的结果?
例如,0.03125
可以被激活地存储,因为它是1/32
的结果(即,分母是2的幂)
sprintf("%.60f", 1/32)
#[1] "0.031250000000000000000000000000000000000000000000000000000000"