首页 > 解决方案 > 整数的下限函数:找到十位的最小值

问题描述

一定有人这样做了,但我没有看到答案。我想将一个数字向量四舍五入到最接近的第十位。我知道如果它是小数,我可以使用 floor 函数,但这不适用于整数

# this works, for decimals
floor( 9576.44 )
# I would like this to return 9570
round( 9576 , -1 )

标签: r

解决方案


所以你总是想剪掉最后几位数字以四舍五入?这个功能怎么样

clip <- function(x, d=1) x - x %% 10**d

它只是做一些模数运算来找到数字的最后一位并将其减去。

然后你可以做

clip( 9576 , 1 )
# [1] 9570
clip( 9576 , 2 )
# [1] 9500

或者仍然使用地板,你可以只除以 10

floor(9576 /10) *10
# [1] 9570

推荐阅读