This is a method for the dplyr::summarise() generic.
See "Fallbacks" section for differences in implementation.
summarise() creates a new data frame.
It returns one row for each combination of grouping variables;
if there are no grouping variables,
the output will have a single row summarising all observations in the input.
It will contain one column for each grouping variable
and one column for each of the summary statistics that you have specified.
# S3 method for duckplyr_df
summarise(.data, ..., .by = NULL, .groups = NULL)A data frame, data frame extension (e.g. a tibble), or a lazy data frame (e.g. from dbplyr or dtplyr). See Methods, below, for more details.
<data-masking> Name-value pairs of
summary functions. The name will be the name of the variable in the result.
The value can be:
A vector of length 1, e.g. min(x), n(), or sum(is.na(y)).
A data frame, to add multiple columns from a single expression.
Returning values with size 0 or >1 was
deprecated as of 1.1.0. Please use
reframe() for this instead.
<tidy-select> Optionally, a selection of columns to
group by for just this operation, functioning as an alternative to group_by(). For
details and examples, see ?dplyr_by.
Grouping structure of the
result.
"drop_last": dropping the last level of grouping. This was the only supported option before version 1.0.0.
"drop": All levels of grouping are dropped.
"keep": Same grouping structure as .data.
"rowwise": Each row is its own group.
When .groups is not specified, it is chosen
based on the number of rows of the results:
If all the results have 1 row, you get "drop_last".
If the number of rows varies, you get "keep" (note that returning a
variable number of rows was deprecated in favor of reframe(), which
also unconditionally drops all levels of grouping).
In addition, a message informs you of that choice, unless the result is ungrouped,
the option "dplyr.summarise.inform" is set to FALSE,
or when summarise() is called from a function in a package.
There is no DuckDB translation in summarise.duckplyr_df()
with .groups = "rowwise".
These features fall back to dplyr::summarise(), see vignette("fallback") for details.
library(duckplyr)
summarise(mtcars, mean = mean(disp), n = n())
Run the code above in your browser using DataLab