gpt4 book ai didi

r - 我怎样才能告诉 R 正确舍入?

转载 作者:行者123 更新时间:2023-12-01 11:17:52 26 4
gpt4 key购买 nike

如何告诉 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 和数字输出?

谢谢,

德鲁

最佳答案

问题是默认情况下,R 只会打印出 7 位数字。请参阅帮助页面 ?getOption 并搜索“digits”。

您可以通过更改设置以允许更多数字来更改此设置。

options(digits=13)
round(5/26*100,digits=6)
[1] 19.230769
round(5/26*100,digits=7)
[1] 19.2307692
round(5/26*100,digits=8)
[1] 19.23076923

关于r - 我怎样才能告诉 R 正确舍入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48361017/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com