#' factor_split_test
#'
#' Run a t.test for each subgroup in a dataset.
#'
#' @param df_ dataframe or tibble
#' @param factor_split factor
#' @param factor factor
#' @param value response variable
#' @param method_ test method. default: t.test
#'
#' @importFrom stats as.formula
#' @importFrom tibble as_tibble
#' @importFrom magrittr %>%
#' @import dplyr
#' @import ggpubr
#' @import purrr
#' @return
#' @export
#'
#' @examples
#' factor_split_test(pbmc_div_mut, "label_subtype", "status", "mutations", "t.test")
factor_split_test <- function(df_, factor_split, factor, value, method_="t.test") {
. <- list()
formula_str <- sprintf("%s ~ %s", value, factor)
formula_ <- as.formula(formula_str)
models <-
as_tibble(df_) %>%
select(!!sym(factor_split), !!sym(factor), !!sym(value)) %>%
split(.[[factor_split]]) %>%
map(~compare_means(formula_, ., method=method_)) %>%
map2(., names(.), function(x, y){bind_rows(x) %>% mutate(factor=y)}) %>%
bind_rows()
models
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.