Most data operations are useful when done on groups defined by variables in the dataset. The group_by function takes an existing table (or svy_table) and converts it to a grouped version, where operations are performed "by group".



A tbl


variables to group by. All tbls accept variable names, some will also accept functions of variables. Duplicated groups will be silently dropped.


By default, when add = FALSE, group_by will override existing groups. To instead add to the existing groups, use add = TRUE


Used to work around non-standard evaluation. See vignette("nse", package = "dplyr") for details.


See group_by for more information about grouping regular data tables.

On tbl_svy objects, group_by sets up the object for operations similar to those allowed in svyby.

See also

group_by for information about group_by on normal data tables.


# Examples of svy_tbl group_by library(survey) data(api) dstrata <- apistrat %>% as_survey_design(strata = stype, weights = pw) %>% group_by(stype) dstrata %>% summarise(api_diff = survey_mean(api00 - api99))
#> # A tibble: 3 × 3 #> stype api_diff api_diff_se #> <fct> <dbl> <dbl> #> 1 E 38.6 2.76 #> 2 H 8.46 3.41 #> 3 M 26.4 3.05