R/ggbetweenstats.R
ggbetweenstats.Rd
A combination of box and violin plots along with jittered data points for between-subjects designs with statistical details included in the plot as a subtitle.
ggbetweenstats( data, x, y, plot.type = "boxviolin", type = "parametric", pairwise.comparisons = FALSE, pairwise.display = "significant", p.adjust.method = "holm", effsize.type = "unbiased", partial = TRUE, bf.prior = 0.707, bf.message = TRUE, results.subtitle = TRUE, xlab = NULL, ylab = NULL, caption = NULL, title = NULL, subtitle = NULL, sample.size.label = TRUE, k = 2, var.equal = FALSE, conf.level = 0.95, nboot = 100, tr = 0.1, mean.plotting = TRUE, mean.ci = FALSE, mean.point.args = list(size = 5, color = "darkred"), mean.label.args = list(size = 3), notch = FALSE, notchwidth = 0.5, linetype = "solid", outlier.tagging = FALSE, outlier.label = NULL, outlier.coef = 1.5, outlier.shape = 19, outlier.color = "black", outlier.label.args = list(size = 3), outlier.point.args = list(), point.args = list(position = ggplot2::position_jitterdodge(dodge.width = 0.6), alpha = 0.4, size = 3, stroke = 0), violin.args = list(width = 0.5, alpha = 0.2), ggtheme = ggplot2::theme_bw(), ggstatsplot.layer = TRUE, package = "RColorBrewer", palette = "Dark2", ggplot.component = NULL, output = "plot", messages = TRUE, ... )
data | A dataframe (or a tibble) from which variables specified are to be taken. A matrix or tables will not be accepted. |
---|---|
x | The grouping variable from the dataframe |
y | The response (a.k.a. outcome or dependent) variable from the
dataframe |
plot.type | Character describing the type of plot. Currently supported
plots are |
type | Type of statistic expected ( |
pairwise.comparisons | Logical that decides whether pairwise comparisons
are to be displayed (default: |
pairwise.display | Decides which pairwise comparisons to display.
Available options are |
p.adjust.method | Adjustment method for p-values for multiple
comparisons. Possible methods are: |
effsize.type | Type of effect size needed for parametric tests. The
argument can be |
partial | If |
bf.prior | A number between |
bf.message | Logical that decides whether to display Bayes Factor in
favor of the null hypothesis. This argument is relevant only for
parametric test (Default: |
results.subtitle | Decides whether the results of statistical tests are
to be displayed as a subtitle (Default: |
xlab, ylab | Labels for |
caption | The text for the plot caption. |
title | The text for the plot title. |
subtitle | The text for the plot subtitle. Will work only if
|
sample.size.label | Logical that decides whether sample size information
should be displayed for each level of the grouping variable |
k | Number of digits after decimal point (should be an integer)
(Default: |
var.equal | a logical variable indicating whether to treat the
variances in the samples as equal. If |
conf.level | Scalar between 0 and 1. If unspecified, the defaults return
|
nboot | Number of bootstrap samples for computing confidence interval
for the effect size (Default: |
tr | Trim level for the mean when carrying out |
mean.plotting | Logical that decides whether mean is to be highlighted
and its value to be displayed (Default: |
mean.ci | Logical that decides whether |
mean.point.args, mean.label.args | A list of additional aesthetic
arguments to be passed to |
notch | A logical. If |
notchwidth | For a notched box plot, width of the notch relative to the
body (default |
linetype | Character strings ( |
outlier.tagging | Decides whether outliers should be tagged (Default:
|
outlier.label | Label to put on the outliers that have been tagged. This
can't be the same as |
outlier.coef | Coefficient for outlier detection using Tukey's method.
With Tukey's method, outliers are below (1st Quartile) or above (3rd
Quartile) |
outlier.shape | Hiding the outliers can be achieved by setting
|
outlier.color | Default aesthetics for outliers (Default: |
outlier.point.args, outlier.label.args | A list of additional aesthetic arguments to be
passed to |
point.args | A list of additional aesthetic arguments to be passed to
the |
violin.args | A list of additional aesthetic arguments to be passed to
the |
ggtheme | A function, |
ggstatsplot.layer | Logical that decides whether |
package | Name of package from which the palette is desired as string or symbol. |
palette | Name of palette as string or symbol. |
ggplot.component | A |
output | Character that describes what is to be returned: can be
|
messages | Decides whether messages references, notes, and warnings are
to be displayed (Default: |
... | Currently ignored. |
For parametric tests, Welch's ANOVA/t-test are used as a default (i.e.,
var.equal = FALSE
).
References:
ANOVA: Delacre, Leys, Mora, & Lakens, PsyArXiv, 2018
t-test: Delacre, Lakens, & Leys, International Review of Social Psychology, 2017
If robust tests are selected, following tests are used is .
ANOVA: one-way ANOVA on trimmed means (see ?WRS2::t1way
)
t-test: Yuen's test for trimmed means (see ?WRS2::yuen
)
For more about how the effect size measures (for nonparametric tests) and
their confidence intervals are computed, see ?rcompanion::wilcoxonR
.
For repeated measures designs, use ggwithinstats
.
https://indrajeetpatil.github.io/ggstatsplot/articles/web_only/ggbetweenstats.html
# \donttest{ # to get reproducible results from bootstrapping set.seed(123) library(ggstatsplot) # simple function call with the defaults ggstatsplot::ggbetweenstats( data = mtcars, x = am, y = mpg, title = "Fuel efficiency by type of car transmission", caption = "Transmission (0 = automatic, 1 = manual)" )# more detailed function call ggstatsplot::ggbetweenstats( data = datasets::morley, x = Expt, y = Speed, type = "nonparametric", plot.type = "box", conf.level = 0.99, xlab = "The experiment number", ylab = "Speed-of-light measurement", pairwise.comparisons = TRUE, p.adjust.method = "fdr", outlier.tagging = TRUE, outlier.label = Run, nboot = 10, ggtheme = ggplot2::theme_grey(), ggstatsplot.layer = FALSE )#> Warning: extreme order statistics used as endpoints#> Note: 99% CI for effect size estimate was computed with 10 bootstrap samples. #>#># }