gpt4 book ai didi

对小 float 进行四舍五入

转载 作者:行者123 更新时间:2023-12-01 19:41:15 25 4
gpt4 key购买 nike

假设我有一个数字向量,我想将其四舍五入为“更漂亮”的数字,例如:

vec <- c(1.739362e-08,8.782537e-08,0.5339712)

我希望它是:

pretty.vec <- c(1.74e-08,8.78e-08,0.53)

我该如何实现这一目标?使用 round 并没有真正的帮助,因为它将前两个元素四舍五入为 0:

> round(vec,2)
[1] 0.00 0.00 0.53

最佳答案

?signif 怎么样? (根据您的应用程序,您还可以使用 print(...,digits=3))

vec <- c(1.739362e-08,8.782537e-08,0.5339712)
signif(vec,digits=3)
## [1] 1.74e-08 8.78e-08 5.34e-01
print(vec,digits=3)
## [1] 1.74e-08 8.78e-08 5.34e-01

让 R 以不同的方式格式化向量元素是相当困难的:通常它假设您想要这种一致性。

print(sprintf("%1.3g",vec),quote=FALSE)
## [1] 1.74e-08 8.78e-08 0.534

还相关:?format?options(参见“scipen”)

关于对小 float 进行四舍五入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29054820/

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