round_any equivalent for dplyr?

爷,独闯天下 提交于 2019-11-28 07:30:13

问题


I am trying to make a switch to the "new" tidyverse ecosystem and try to avoid loading the old packages from Wickham et al. I used to rely my coding previously. I found round_any function from plyr useful in many cases where I needed custom rounding for plots, tables, etc. E.g.

x <- c(1.1, 1.0, 0.99, 0.1, 0.01, 0.001) 

library(plyr)    

round_any(x, 0.1, floor)
# [1] 1.1 1.0 0.9 0.1 0.0 0.0

Is there an equivalent for round_any function from plyr package in tidyverse?


回答1:


ggplot::cut_width as pointed to in one of the comments, does not even return a numeric vector, but a factor instead. So it is no real substitute.

Since round and not floor is the default rounding method, a custom replacement until a (dplyr solution may arrive) would be

round_any = function(x, accuracy, f=round){f(x/ accuracy) * accuracy}


来源:https://stackoverflow.com/questions/43627679/round-any-equivalent-for-dplyr

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!