R 四舍五入到 0.05 倍数

R round values to 0.05 multiple

我有一个数据框,我想将所有值四舍五入到最接近的 0.05 倍数。 我发现 plyr 的 round_any 可以做到这一点,但是当我输入以下代码时:

> library(plyr)
> round_any(Table, 0.05)

我收到以下错误:

Error in UseMethod("round_any") : 
  no applicable method for 'round_any' applied to an object of class "data.frame"

你能帮我解决这个问题吗?

如错误消息所述,问题在于您正尝试将该函数应用于数据框,而它只能应用于数值向量。如果按列应用它,它将起作用:

as.data.frame(sapply(Table, round_any, 0.05))