【发布时间】:2011-06-01 01:24:17
【问题描述】:
我有一个像 0.5 这样的数字,我想保留两位数以使数字成为 0.50。虽然最后一位是零,所以它总是不能出现。
我用过round(0.5,2),但是不行
【问题讨论】:
我有一个像 0.5 这样的数字,我想保留两位数以使数字成为 0.50。虽然最后一位是零,所以它总是不能出现。
我用过round(0.5,2),但是不行
【问题讨论】:
您可以通过以下方式作弊:
y <- 0.5
formatC(round(y,2),2,format="f")
请注意,这会更改为字符。因此,它仅用于显示目的。
【讨论】:
另一种选择是使用sprintf
y <- 0.5
sprintf("%0.2f", round(y, 2))
[1] "0.50"
编辑:根据 Wojciech Sobala 的说法(下)
sprintf("%0.2f", y)
应该足够了。
sprintf("%0.2f", 0.478)
[1] "0.48"
【讨论】:
?sprintf。 m.n:用句点分隔的两个数字,分别表示字段宽度(m)和精度(n)。