如何让R正确四舍五入?
R中的小数位数 我遇到了一个问题,无法解决 我希望R计算5/26*100 = 19.230769后进行四舍五入。
x <- 5/26*100
x
给我:
[1] 19.23077
让我们尝试使用 round() 函数,首先将小数点后保留位数设置为 4:
x <- round(5/26*100,digits=4)
x
提供:
[1] 19.2308
接下来,让我们将数字设置为5:
x <- round(5/26*100,digits=5)
x
提供:
[1] 19.23077
现在,让我们将数字设置为6:
x <- round(5/26*100,digits=6)
x
提供:
[1] 19.23077
请问有人可以告诉我如何修复这个问题吗?您的 RStudio 是否也能正确四舍五入呢?
我也尝试过使用 signif() 函数。
x <- signif(5/26*100,digits=6)
x
给我们:
[1] 19.2308
增加到7位数:
> x <- signif(5/26*100,digits=7)
> x
[1] 19.23077
增加到8个数字:
> x <- signif(5/26*100,digits=8)
> x
[1] 19.23077
我们可以使用sprintf()函数
> x <- sprintf("%0.6f", (5/26*100))
> x
[1] "19.230769"
sprintf()解决了四舍五入的问题,但它又通过将数字值更改为字符而创建了一个新问题。
有人能向我展示如何让r给出5/26*100 = 19.230769的数字输出吗?
谢谢,
Drew