具有任意基数的整数,例如:基数 7

Round number with arbitrary base, e.g.: base 7

是否有内置(或存在于任何包中)函数以任意基数对数字进行舍入?例如。 la round_base(26,base = 7) 给出 28。谢谢!

简单代码:

n = 26.5
base = 7

a = round(n)
print(a)
for (i in round(a-base/2):round(a+base/2)) {
  if (i %% (base) == 0) a = i 
}

print(a)  

[1] 28

round_base <- function(x,base) {
    round(x/base)*base
}

为你工作?

round_base(26,7)
## [1] 28