Most data operations are done on groups defined by variables. `group_by()` takes an existing tbl and converts it into a grouped tbl where operations are performed "by group". `ungroup()` removes grouping.

Arguments

.data

A tbl. (See dplyr)

...

In `group_by()`, variables or computations to group by. In `ungroup()`, variables to remove from the grouping.

.add

When `FALSE`, the default, `group_by()` will override existing groups. To add to the existing groups, use `.add = TRUE`.

This argument was previously called `add`, but that prevented creating a new grouping variable called `add`, and conflicts with our naming conventions.

.drop

When `.drop = TRUE`, empty groups are dropped. See [group_by_drop_default()] for what the default value is for this argument.

Value

A [grouped data frame][grouped_df()], unless the combination of `...` and `add` yields a non empty set of grouping columns, a regular (ungrouped) data frame otherwise.

Methods

These function are **generic**s, which means that packages can provide implementations (methods) for other classes. See the documentation of individual methods for extra arguments and differences in behaviour.

Methods available in currently loaded packages:

Examples


by_cyl <- mtcars |> group_by(cyl)