group_nest {dplyr} | R Documentation

## Nest a tibble using a grouping specification

### Description

Nest a tibble using a grouping specification

### Usage

    group_nest(.tbl, ..., .key = "data", keep = FALSE)

### Arguments

`.tbl` | A tbl
`...` | Grouping specification, forwarded to `group_by()`
`.key` | the name of the list column
`keep` | Should the grouping columns be kept in the list column.

### Details

### Value

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.

### 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.

### See Also

Other grouping functions: `group_by_all`, `group_by`, `group_indices`, `group_keys`, `group_map`, `group_rows`, `group_size`, `group_trim`, `groups`

### Examples

    #----- use case 1: a grouped data frame
    iris %>%
      group_by(Species) %>%
      group_nest()

    # this can be useful if the grouped data has been altered before nesting
    iris %>%
      group_by(Species) %>%
      filter(Sepal.Length > mean(Sepal.Length)) %>%
      group_nest()

    #----- use case 2: using group_nest() on a ungrouped data frame with
    #                  a grouoping specification that uses the data mask
    starwars %>%
      group_nest(species, homeworld)

[Package dplyr version 0.8.0.1 Index]