aov.b: Between-Subject Analysis of Variance

View source: R/aov.b.R

aov.bR Documentation

Between-Subject Analysis of Variance

Description

This function performs an one-way between-subject analysis of variance (ANOVA) including Tukey HSD post hoc tests for multiple comparison and provides descriptive statistics, effect size measures, and a plot showing bars representing means for each group and error bars for difference-adjusted confidence intervals.

Usage

aov.b(formula, data, hypo = FALSE, descript = FALSE, effsize = FALSE,
      weighted = TRUE, correct = FALSE, posthoc = FALSE, conf.level = 0.95,
      digits = 2, p.digits = 3, as.na = NULL, plot = FALSE, bar = TRUE,
      point = FALSE, ci = TRUE, jitter = FALSE, adjust = TRUE,
      filename = NULL, width = NA, height = NA, dpi = 600,
      write = NULL, append = TRUE, check = TRUE, output = TRUE)

Arguments

formula

a formula of the form y ~ group where y is a numeric variable giving the data values and group a numeric variable, character variable or factor with more than two values or factor levels giving the corresponding groups.

data

a matrix or data frame containing the variables in the formula formula.

hypo

logical: if TRUE (default), null and alternative hypothesis are shown on the console.

descript

logical: if TRUE (default), descriptive statistics are shown on the console.

effsize

logical: if TRUE, effect size measures \eta^2 and \omega^2 for the ANOVA and Cohen's d for the post hoc tests are shown on the console.

weighted

logical: if TRUE (default), the weighted pooled standard deviation is used to compute Cohen's d.

correct

logical: if TRUE, correction factor to remove positive bias in small samples for is used to compute Cohen's d.

posthoc

logical: if TRUE, Tukey HSD post hoc test for multiple comparison is conducted.

conf.level

a numeric value between 0 and 1 indicating the confidence level of the interval.

digits

an integer value indicating the number of decimal places to be used for displaying descriptive statistics and confidence interval.

p.digits

an integer value indicating the number of decimal places to be used for displaying the p-value.

as.na

a numeric vector indicating user-defined missing values, i.e. these values are converted to NA before conducting the analysis.

plot

logical: if TRUE, a plot is drawn.

bar

logical: if TRUE (default), bars representing means for each groups are drawn.

point

logical: if TRUE, points representing means for each groups are drawn.

ci

logical: if TRUE (default), error bars representing confidence intervals are drawn.

jitter

logical: if TRUE, jittered data points are drawn.

adjust

logical: if TRUE (default), difference-adjustment for the confidence intervals is applied.

filename

a character string indicating the filename argument including the file extension in the ggsave function. Note that one of ".eps", ".ps", ".tex", ".pdf" (default), ".jpeg", ".tiff", ".png", ".bmp", ".svg" or ".wmf" needs to be specified as file extension in the filename argument. Note that plots can only be saved when plot = TRUE.

width

a numeric value indicating the width argument (default is the size of the current graphics device) in the ggsave function.

height

a numeric value indicating the height argument (default is the size of the current graphics device) in the ggsave function.

dpi

a numeric value indicating the dpi argument (default is 600) in the ggsave function.

write

a character string naming a text file with file extension ".txt" (e.g., "Output.txt") for writing the output into a text file.

append

logical: if TRUE (default), output will be appended to an existing text file with extension .txt specified in write, if FALSE existing text file will be overwritten.

check

logical: if TRUE (default), argument specification is checked.

output

logical: if TRUE (default), output is shown on the console.

Details

Confidence Intervals

Cumming and Finch (2005) pointed out that when 95% confidence intervals (CI) for two separately plotted means overlap, it is still possible that the CI for the difference would not include zero. Baguley (2012) proposed to adjust the width of the CIs by the factor of \sqrt{2} to reflect the correct width of the CI for a mean difference:

\hat{\mu}_{j} \pm t_{n - 1, 1 - \alpha/2} \frac{\sqrt{2}}{2} \hat{\sigma}_{{\hat{\mu}}_j}

These difference-adjusted CIs around the individual means can be interpreted as if it were a CI for their difference. Note that the width of these intervals is sensitive to differences in the variance and sample size of each sample, i.e., unequal population variances and unequal n alter the interpretation of difference-adjusted CIs.

Value

Returns an object of class misty.object, which is a list with following entries:

call

function call

type

type of analysis

data

data frame with variables used in the current analysis

formula

formula of the current analysis

args

specification of function arguments

plot

ggplot2 object for plotting the results

result

result tables

Author(s)

Takuya Yanagida takuya.yanagida@univie.ac.at

References

Baguley, T. S. (2012a). Serious stats: A guide to advanced statistics for the behavioral sciences. Palgrave Macmillan.

Cumming, G., and Finch, S. (2005) Inference by eye: Confidence intervals, and how to read pictures of data. American Psychologist, 60, 170–80.

Rasch, D., Kubinger, K. D., & Yanagida, T. (2011). Statistics in psychology - Using R and SPSS. John Wiley & Sons.

See Also

aov.w, test.t, test.z, test.levene, aov.b, cohens.d, ci.mean.diff, ci.mean

Examples

#————————————————————————————————————————————————————————————————————————————
# Between-Subject Analysis of Variance

# Example 1a: Between-Subject ANOVA
aov.b(hp ~ gear, data = mtcars)

# Example 1b: Between-Subject ANOVA
# Print descriptive statistics and Tukey HSD post hoc test
aov.b(hp ~ gear, data = mtcars, descript = TRUE, posthoc = TRUE)

# Example 1c: Between-Subject ANOVA, print eta-squared and omega-squared
aov.b(hp ~ gear, data = mtcars, effsize = TRUE)

#————————————————————————————————————————————————————————————————————————————
# Plot

# Example 2a: Plot results, default setting
aov.b(hp ~ gear, data = mtcars, plot = TRUE)

# Example 2b: Plot results
# No bars, draw points representing means and jittered data points
aov.b(hp ~ gear, data = mtcars, plot = TRUE, bar = FALSE, point = TRUE, jitter = TRUE)

# Example 2c: Plot results using the plot() function, use additional arguments
# see Details in the help page of the function plot.misty.object
object <- aov.b(hp ~ gear, data = mtcars)
plot(object, jitter = TRUE, jitter.alpha = 0.4, title = "Between-Subject ANOVA")

#————————————————————————————————————————————————————————————————————————————
# Create Plot Manually

# Load ggplot2 package
library(ggplot2)

# Create misty object
object <- aov.b(hp ~ gear, data = mtcars)

# Example 3: Plot
ggplot(object$result$descript, aes(group, y)) +
  geom_bar(aes(group, m), stat = "summary", fun = "mean") +
  geom_jitter(data = object$data, aes(group, y), alpha = 0.1, width = 0.05,
             height = 0, size = 1.25) +
  geom_point(aes(group, m), stat = "identity", size = 3) +
  geom_errorbar(aes(group, m, ymin = low, ymax = upp), width = 0.1) +
  theme_bw()

#————————————————————————————————————————————————————————————————————————————
# Write Results and Save Plot

## Not run: 

# Example 4a: Write results into a text file
aov.b(hp ~ gear, data = mtcars, write = "ANOVA.txt")

# Example 4b: Write results into an Excel file
aov.b(hp ~ gear, data = mtcars, write = "ANOVA.xlsx")

# Example 4c: Save plot as PNG fine
aov.b(hp ~ gear, data = mtcars, plot = TRUE, filename = "ANOVA.png",
      width = 6, height = 5)

## End(Not run)

misty documentation built on Aug. 2, 2026, 9:06 a.m.

Related to aov.b in misty...