【发布时间】:2011-03-27 12:00:12
【问题描述】:
我有一个数字,例如 1.128347132904321674821,我希望在输出到屏幕(或写入文件)时仅显示两位小数。如何做到这一点?
x <- 1.128347132904321674821
编辑:
用途:
options(digits=2)
已被建议作为可能的答案。有没有办法在脚本中指定它以供一次性使用?当我将它添加到我的脚本中时,它似乎没有做任何不同的事情,而且我对大量重新输入以格式化每个数字不感兴趣(我正在自动化一个非常大的报告)。
--
答案:round(x, digits=2)
【问题讨论】:
-
如果使用 options(digits=4),那么计算不会限制为 4 位,是吗?在那种情况下,它会使程序的准确性大大降低。它只影响打印时的数字,对吗?
-
controls the number of digits to print when printing numeric values. It is a suggestion only. Valid values are 1...22 with default 7. See the note in print.default about values greater than 15.from ?options 它只影响输出。 -
请注意
round(23, digits=2)将打印23而不是23.00。如果你想要后者,试试stackoverflow.com/a/12135122/180892 -
@PaulHurleyuk,我认为在编程中使用尽可能少的库是一种很好的做法。为每个琐碎的需求使用不同库的人通常会导致混乱、大文件、可移植性问题等。
标签: r formatting rounding r-faq