#' Group summary 2
#'
#' This function can group by more than one variable.
#'
#' @param df A data frame
#' @param summary_var The variable used inside dplyr::summarise, e.g. gns = mean(mpg)
#' @param .f The function used in summarise, e.g. mean, or length.
#' @param ... Used to group by more than one variable.
#'
#' @return A tibble
#' @export
#'
#' @examples
#' dog_group_stat2(df = mtcars, summary_var = mpg, .f = mean, am, vs)
#'
dog_group_stat2 <- function(df, summary_var, .f, ...) {
func <- rlang::enquo(.f)
func2 <- rlang::as_function(.f)
summary_var <-rlang::enquo(summary_var)
#name <- paste0(rlang::quo_name(summary_var), "_", deparse(substitute(.f))) # Base R version.
name <- paste0(rlang::quo_name(summary_var), "_", rlang::quo_name(func))
df %>%
dplyr::group_by(...) %>%
dplyr::summarise(!!name := func2(!!summary_var),
n = n())
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.