alignment数字精度Excel 2013和R

这是一个相当宽泛的问题,但是我在R中复制了一个Excel模型。R产生的结果几乎与excel相同,但在10 ^ -8的范围内总是有一个微小的百分比偏差。 我认为这是由于数值精度。 该模型只使用基本的算术运算。 我的问题是:是否有一个简单的方法来强制R使用Excel的相同的数值精度?

可能不会。 R总是使用双精度(即8字节)浮点,而且这似乎也是Excel使用的 。

如果你只做简单的算术,结果是不一样的,但是请注意,即使改变算术运算的顺序也会改变结果(即浮点运算不是关联的: (a+b)+c != a+(b+c) ,所以如果算术从左到右, a+b+c != c+b+a )。 尽pipe这可能只适用于Excel 2003,但是甚至不可能知道Excel究竟在做什么。尽pipe如此,Excel不同于R和大多数其他数字程序所使用的IEEE 754标准。

可以通过从简单到复杂的例子,看看分歧的发生位置,重新排列你的计算来避免这个问题, 或许能够得到确切的平等,但是除非这个平等对于你来说是非常重要的,值得投入很多的努力,你可能会更好地testing近似平等。

可以想象的是,导出到CSV是失去了精度(例如见这里 )。