...: Grouping specification, forwarded to group_by()
.key: the name of the list column
keep: Should the grouping columns be kept in the list column.
Returns
A tbl with one row per unique combination of the grouping variables. The first columns are the grouping variables, followed by a list column of tibbles with matching rows of the remaining columns.
Lifecycle
group_nest() is not stable because tidyr::nest(.by =)
provides very similar behavior. It may be deprecated in the future.
Grouped data frames
The primary use case for group_nest() is with already grouped data frames, typically a result of group_by(). In this case group_nest() only uses the first argument, the grouped tibble, and warns when ... is used.
Ungrouped data frames
When used on ungrouped data frames, group_nest() forwards the ... to group_by() before nesting, therefore the ... are subject to the data mask.
Examples
#----- use case 1: a grouped data frameiris %>% group_by(Species)%>% group_nest()# this can be useful if the grouped data has been altered before nestingiris %>% group_by(Species)%>% filter(Sepal.Length > mean(Sepal.Length))%>% group_nest()#----- use case 2: using group_nest() on a ungrouped data frame with# a grouping specification that uses the data maskstarwars %>% group_nest(species, homeworld)
See Also
Other grouping functions: group_by(), group_map(), group_split(), group_trim()