Nothing
## -----------------------------------------------------------------------------
source("setup.R")
pkgs <- "ggplot2"
successfully_loaded <- purrr::map_lgl(pkgs, requireNamespace, quietly = TRUE)
can_evaluate <- all(successfully_loaded)
if (can_evaluate) {
purrr::walk(pkgs, library, character.only = TRUE)
} else {
knitr::opts_chunk$set(eval = FALSE)
}
## -----------------------------------------------------------------------------
citation("statsExpressions")
## -----------------------------------------------------------------------------
oneway_anova(mtcars, cyl, wt, type = "nonparametric")
oneway_anova(mtcars, cyl, wt, type = "robust")
## -----------------------------------------------------------------------------
# running one-sample proportion test for `vs` at all levels of `am`
mtcars |>
group_by(am) |>
group_modify(~ contingency_table(.x, vs), .keep = TRUE) |>
ungroup()
## -----------------------------------------------------------------------------
pairwise_comparisons(
data = mtcars,
x = cyl,
y = wt,
type = "parametric",
var.equal = FALSE,
p.adjust.method = "holm"
)
## -----------------------------------------------------------------------------
multi_test_results <- dplyr::bind_rows(
two_sample_test(mtcars, am, wt, type = "parametric"),
two_sample_test(mtcars, am, wt, type = "nonparametric"),
two_sample_test(mtcars, am, wt, type = "robust")
) |>
dplyr::mutate(p.value = stats::p.adjust(p.value, method = "holm"))
dplyr::select(multi_test_results, method, effectsize, estimate, p.value)
## -----------------------------------------------------------------------------
# suppose you have run your own statistical test
custom_stats <- cbind.data.frame(
statistic = 2.18,
df = 18,
p.value = 0.041,
estimate = 0.65,
conf.level = 0.95,
conf.low = 0.03,
conf.high = 1.27,
method = "Student's t-test"
)
# generate a formatted expression
add_expression_col(
data = custom_stats,
statistic.text = list(quote(italic("t"))),
effsize.text = list(quote(italic("d")["Cohen"])),
n = 20L,
digits = 2L,
digits.df = 0L
)$expression[[1]]
## -----------------------------------------------------------------------------
knitr::include_graphics("stats_reporting_format.png")
## -----------------------------------------------------------------------------
# needed libraries
library(ggplot2)
# Example 1: Performing a t-test on raw tidy data and extracting the formatted expression
# for direct use in a plot annotation
res_ttest <- two_sample_test(mtcars, am, wt, type = "parametric")
ggplot(mtcars, aes(as.factor(am), wt)) +
geom_boxplot() +
labs(
x = "Transmission (0 = automatic, 1 = manual)",
y = "Weight (1000 lbs)",
title = "Vehicle Weight by Transmission Type",
subtitle = res_ttest$expression[[1]] # Extract formatted p-value and effect size
)
# Example 2: One-way ANOVA
res_anova <- oneway_anova(iris, Species, Sepal.Length, type = "nonparametric")
ggplot(iris, aes(x = Sepal.Length, y = Species)) +
geom_boxplot() + # use 'expression' column to display results in the subtitle
labs(
x = "Penguin Species",
y = "Body mass (in grams)",
title = "Kruskal-Wallis Rank Sum Test",
subtitle = res_anova$expression[[1]]
)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.