R中有一个选项可以控制数字显示。例如:
options(digits=10)
应该以10位数字给出计算结果,直到R会话结束。在R的帮助文件中,digits参数的定义如下:
digits:控制在打印数字值时要打印的位数。这只是一个建议。有效值为1 ... 22,默认值为7
因此,它说这只是一个建议。如果我希望始终显示10位数字,而不是多多少少怎么办?
我的第二个问题是,如果我想显示22位以上的数字,例如100位数字等更精确的计算,该怎么办?基数R是否有可能,或者我是否需要其他包装/功能?
编辑:感谢jmoy的建议,我尝试了sprintf("%.100f",pi)
,它给了
[1] "3.1415926535897931159979634685441851615905761718750000000000000000000000000000000000000000000000000000"
其中有48位小数。这是R可以处理的最大限制吗?
python -c "import math; print(format(math.pi, '.100f'))"
。结果是pi
48个“实际”小数,其余52位用零填充。