jmv

Repeated Measures ANOVA

Example usage

data('bugs', package = 'jmv')

anovaRM(
    data = bugs,
    rm = list(
        list(
            label = 'Disgusting',
            levels = c('Low', 'High'))),
    rmCells = list(
        list(
            measure = 'LDLF',
            cell = 'Low'),
        list(
            measure = 'LDHF',
            cell = 'High')),
    rmTerms = list(
        'Disgusting'))

#
#  Within Subjects Effects
#  ───────────────────────────────────────────────────────────────────────
#                  Sum of Squares    df    Mean Square    F       p
#  ───────────────────────────────────────────────────────────────────────
#    Disgusting               126     1         126.11    44.2    < .001
#    Residual                 257    90           2.85
#  ───────────────────────────────────────────────────────────────────────
#    Note. Type 3 Sums of Squares
#
#
#
#  Between Subjects Effects
#  ─────────────────────────────────────────────────────────────────
#                Sum of Squares    df    Mean Square    F    p
#  ─────────────────────────────────────────────────────────────────
#    Residual               954    90           10.6
#  ─────────────────────────────────────────────────────────────────
#    Note. Type 3 Sums of Squares
#

Arguments

data the data as a data frame
rm a list of lists, where each list describes the label (as a string) and the levels (as vector of strings) of a particular repeated measures factor
rmCells a list of lists, where each list decribes a repeated measure (as a string) from data defined as measure and the particular combination of levels from rm that it belongs to (as a vector of strings) defined as cell
bs a vector of strings naming the between subjects factors from data
cov a vector of strings naming the covariates from data. Variables must be numeric
rmTerms a list of character vectors describing the repeated measures terms to go into the model
bsTerms a list of character vectors describing the between subjects terms to go into the model
ss '2' or '3' (default), the sum of squares to use
effectSize one or more of 'eta', 'partEta', or 'omega'; use η², partial η², and ω² effect sizes, respectively
spherTests TRUE or FALSE (default), perform sphericity tests
spherCorr one or more of 'none' (default), 'GG', or HF; use no p-value correction, the Greenhouse-Geisser p-value correction, and the Huynh-Feldt p-value correction for shericity, respectively
leveneTest TRUE or FALSE (default), test for equality of variances (i.e., Levene's test)
contrasts in development
postHoc a list of character vectors describing the post-hoc tests that need to be computed
postHocCorr one or more of 'none', 'tukey' (default), 'scheffe', 'bonf', or 'holm'; use no, Tukey, Scheffe, Bonferroni and Holm posthoc corrections, respectively
plotHAxis a string naming the variable placed on the horizontal axis of the plot
plotSepLines a string naming the variable represented as separate lines on the plot
plotSepPlots a string naming the variable to separate over to form multiple plots
plotError 'none', 'ci' (default), or 'se'. Use no error bars, use confidence intervals, or use standard errors on the plots, respectively
ciWidth a number between 50 and 99.9 (default: 95) specifying the confidence interval width
descStats TRUE or FALSE (default), provide descriptive statistics

Returns

A results object containing:

results$rmTable a table
results$bsTable a table
results$assump$spherTable a table
results$assump$leveneTable a table
results$contrasts an array of tables
results$postHoc an array of tables
results$descPlot an image
results$descPlots an array of images

Tables can be converted to data frames with asDF or as.data.frame(). For example:

results$rmTable$asDF

as.data.frame(results$rmTable)

Elements in arrays can be accessed with [[n]]. For example:

results$contrasts[[1]] # accesses the first element