dplyr (version 0.3.0.2)

top_n: Select top n rows (by value).

Description

This is a convenient wrapper that uses filter and min_rank to select the top n entries in each group, ordered by wt.

Usage

top_n(x, n, wt)

Arguments

x
a tbl to filter
n
number of rows to return. If x is grouped, this is the number of rows per group. May include more than n if there are ties.
wt
(Optional). The variable to use for ordering. If not specified, defaults to the last variable in the tbl.

Examples

Run this code
# Find 10 players with most games
if (require("Lahman")) {
players <- group_by(tbl_df(Batting), playerID)
games <- tally(players, G)
top_n(games, 10, n)

# A little nicer with \%>\%
tbl_df(Batting) %>%
  group_by(playerID) %>%
  tally(G) %>%
  top_n(10)

# Find year with most games for each player
tbl_df(Batting) %>% group_by(playerID) %>% top_n(1, G)
}

Run the code above in your browser using DataCamp Workspace