上下取整R
这可能看起来很愚蠢,但我并没有成功地按照自己的意愿对数据进行舍入。 这是我的阵列的一个示例:上下取整R,r,rounding,R,Rounding,这可能看起来很愚蠢,但我并没有成功地按照自己的意愿对数据进行舍入。 这是我的阵列的一个示例: a 对于四舍五入min: roundDw <- function(x,to=-10) { to*(x%/%to + as.logical(x%%to)) } roundDw(min(a)) roundDw您可以使用plyr中的round\u any library(plyr) a <- seq(-0.5, 30, by = 5) round_any(min(a), 10, f =
a
对于四舍五入min
:
roundDw <- function(x,to=-10)
{
to*(x%/%to + as.logical(x%%to))
}
roundDw(min(a))
roundDw您可以使用plyr
中的round\u any
library(plyr)
a <- seq(-0.5, 30, by = 5)
round_any(min(a), 10, f = floor)
## -10
round_any(max(a), 10, f = ceiling)
## 30
库(plyr)
a谢谢你的帮助。这适用于-0.5的情况,将四舍五入到-10。也许我错误地描述了我的问题,但是当我用-2.5替换-0.5时,它变成了30,这是我没有想到的。我的期望值是-10。但是如果min(a)是-12,那么我期望-20。你期望的数字范围是多少?你的数组中有数字吗?很抱歉,我正在测试代码,所以没有及时回复。他们工作得很好。非常感谢你的帮助。
roundDw <- function(x,to=-10)
{
to*(x%/%to + as.logical(x%%to))
}
roundDw(min(a))
library(plyr)
a <- seq(-0.5, 30, by = 5)
round_any(min(a), 10, f = floor)
## -10
round_any(max(a), 10, f = ceiling)
## 30