Select top (or bottom) n rows (by value)
top_n()
has been superseded in favour of slice_min()
/slice_max()
.
While it will not be deprecated in the near future, retirement means
that we will only perform critical bug fixes, so we recommend moving to the
newer alternatives.
top_n()
was superseded because the name was fundamentally confusing as
it returned what you might reasonably consider to be the bottom
rows. Additionally, the wt
variable had a confusing name, and strange
default (the last column in the data frame). Unfortunately we could not
see an easy way to fix the existing top_n()
function without breaking
existing code, so we created a new alternative.
top_n(x, n, wt) top_frac(x, n, wt)
x |
A data frame. |
n |
Number of rows to return for |
wt |
(Optional). The variable to use for ordering. If not specified, defaults to the last variable in the tbl. |
df <- data.frame(x = c(6, 4, 1, 10, 3, 1, 1)) df %>% top_n(2) # highest values df %>% top_n(-2) # lowest values # now use df %>% slice_max(x, n = 2) df %>% slice_min(x, n = 2) # top_frac() -> prop argument of slice_min()/slice_max() df %>% top_frac(.5) # -> df %>% slice_max(x, prop = 0.5)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.