如何在R中以500的间隔四舍五入整数

时间:2019-07-08 17:47:53

标签: r

说我有一个整数向量:tt <- c(26000L, 26000L, 25333L, 25333L, 25343L, 24667L, 24667L, 24667L, 23667L)

我想在500的间隔内替换这些整数并得到:

26000 26000 25500 25500 25500 25000 25000 25000 24000

2 个答案:

答案 0 :(得分:1)

您可以使用round_any库中的plyr

library(plyr)

round_any(as.numeric(tt), 500)
[1] 26000 26000 25500 25500 25500 24500 24500 24500 23500

round_any(as.numeric(tt), 500, f = floor)
[1] 26000 26000 25000 25000 25000 24500 24500 24500 23500

round_any(as.numeric(tt), 500, f = ceiling)
[1] 26000 26000 25500 25500 25500 25000 25000 25000 24000

答案 1 :(得分:0)

我不确定您的取整逻辑,但是

round(as.numeric(tt) / 500) * 500
# [1] 26000 26000 25500 25500 25500 24500 24500 24500 23500