我遇到了R.
的问题如果我插入以下分部,我会得到这些结果。
9207550/4
结果:
2301888
但它应该是:
2301887.5
如果我为几个零添加扩展分子和分母,我会得到相同的结果:
9207550.0000 / 4.0000
2301888
有人遇到同样的问题吗?有人可以向我解释这种行为吗?
提前谢谢你。 任何帮助表示赞赏。
答案 0 :(得分:2)
R
中有一个选项可以控制显示的位数。举个例子:
options(digits=5)
或者如果你不是科学记谱法的粉丝那么:
options(digits = 999)
大多数系统都倾向于内置一些默认显示精度,但这与@jogo提到的实际计算不同。 <{1}}与结果再现中的任何系统没有什么不同。
就计算而言,基本R
计算对于您将在日常生活中处理的大多数数字来说已足够,但是,如果您真的想要精确到{{1} R
通常大于15的小数,我建议使用n
,n
或gmp
个包。
修改强>
我刚刚注意到你在Rmpfr
师的尝试。某些语言版本(如 python 2.xx )在rcdd
vs float
时对分割有不同的处理方式,在编写时考虑到存储和计算效率。这种差异现在已经在最新版本中消失了。 floats
由统计学家为统计学家建立,因此您可以放心,在数学运算方面,默认处理方式会有所不同。数字就是它们 - 数字。 integers
和R
是程序化结构,而不是数学结构。