我有两种数字模式:
x1 = 0.0003577
x2 = 0.2365483
我怎样才能将它们四舍五入:
x1 = 0.00035
x2 = 0.23
那么逗号后的最后一个零后面只有两个或一个数字?
答案 0 :(得分:5)
您可以在 signif
包中使用 base
。该函数将其第一个参数中的值四舍五入为指定的有效数字位数。
x1 = 0.0003577
x2 = 0.2365483
#where 2 is the number of significant digit
signif(x1,2)
[1] 0.00036
signif(x2,2)
[1] 0.24
答案 1 :(得分:1)
您可以定义一个用户函数 f
,如下所示
f <- function(x) {
p <- 10^(-ceiling(log10(x)) + 2)
trunc(x * p) / p
}
你会得到
> f(x1)
[1] 0.00035
> f(x2)
[1] 0.23