使用fromatC保持3位有效数字

时间:2014-07-18 21:10:41

标签: r rounding

我试过跟随三个数字的向量:

formatC(c(0.8999, 2.9999, 43.98), digit=3, format="fg", flag='#')

正确的答案应该是:     [1]“0.900”“3.00”“44.0”

但这就是我所拥有的:[1]“0.900”“3.0”“44”。似乎formatC无法舍入一系列最大的十进制数字。

以下代码返回正确的结果[1]“0.833”“2.33”“43.3”:

formatC(c(0.8333, 2.3333, 43.33), digit=3, format="fg", flag='#')

我讨厌声称我发现了一个错误,但在不同的数字上比较相同的编码,不需要的结果显示formatC有一些缺陷。

1 个答案:

答案 0 :(得分:1)

正如MrFlick发表的评论formatC(43.98, digit=1, format="f")是你想要的。也许这篇关于宽度的帮助页面可能会有所帮助:

  

总场宽;如果未指定数字和宽度,则为宽度   默认为1,否则为数字+ 1. width = 0将使用width =   数字,宽度< 0表示左对齐此字段中的数字