3

我无法摆脱我错过了一些明显的东西的感觉。是否有更清晰或更惯用的方法来执行以下功能?

closest.preceding <- function(candidates, limit) {
    # return the value in candidates that is closest to but less than the limit
    return(limit - min(limit-candidates[candidates < limit]))
}

感谢您的任何见解。

4

1 回答 1

5

你可以这样做:

max(candidates[candidates<limit])

首先过滤掉那些(严格)小于限制的候选人,然后取其中的最大值(最接近)。

我敢肯定还有其他方法。

于 2012-03-07T04:49:39.310 回答