duncanTest: Duncan's Multiple Range Test

View source: R/duncanTest.R

duncanTestR Documentation

Duncan's Multiple Range Test

Description

Performs Duncan's all-pairs comparisons test for normally distributed data with equal group variances.

Usage

duncanTest(x, ...)

## Default S3 method:
duncanTest(x, g, ...)

## S3 method for class 'formula'
duncanTest(formula, data, subset, na.action, ...)

## S3 method for class 'aov'
duncanTest(x, ...)

Arguments

x

a numeric vector of data values, a list of numeric data vectors or a fitted model object, usually an aov fit.

...

further arguments to be passed to or from methods.

g

a vector or factor object giving the group for the corresponding elements of "x". Ignored with a warning if "x" is a list.

formula

a formula of the form response ~ group where response gives the data values and group a vector or factor of the corresponding groups.

data

an optional matrix or data frame (or similar: see model.frame) containing the variables in the formula formula. By default the variables are taken from environment(formula).

subset

an optional vector specifying a subset of observations to be used.

na.action

a function which indicates what should happen when the data contain NAs. Defaults to getOption("na.action").

Details

For all-pairs comparisons in an one-factorial layout with normally distributed residuals and equal variances Duncan's multiple range test can be performed. Let X_{ij} denote a continuous random variable with the j-the realization (1 \le j \le n_i) in the i-th group (1 \le i \le k). Furthermore, the total sample size is N = \sum_{i=1}^k n_i. A total of m = k(k-1)/2 hypotheses can be tested: The null hypothesis is H_{ij}: \mu_i = \mu_j ~~ (i \ne j) is tested against the alternative A_{ij}: \mu_i \ne \mu_j (two-tailed). Duncan's all-pairs test statistics are given by

t_{(i)(j)} \frac{\bar{X}_{(i)} - \bar{X}_{(j)}} {s_{\mathrm{in}} \left(r\right)^{1/2}}, ~~ (i < j)

with s^2_{\mathrm{in}} the within-group ANOVA variance, r = k / \sum_{i=1}^k n_i and \bar{X}_{(i)} the increasingly ordered means 1 \le i \le k. The null hypothesis is rejected if

\mathrm{Pr} \left\{ |t_{(i)(j)}| \ge q_{vm'\alpha'} | \mathrm{H} \right\}_{(i)(j)} = \alpha' = \min \left\{1,~ 1 - (1 - \alpha)^{(1 / (m' - 1))} \right\},

with v = N - k degree of freedom, the range m' = 1 + |i - j| and \alpha' the Bonferroni adjusted alpha-error. The p-values are computed from the Tukey distribution.

Value

A list with class "PMCMR" containing the following components:

method

a character string indicating what type of test was performed.

data.name

a character string giving the name(s) of the data.

statistic

lower-triangle matrix of the estimated quantiles of the pairwise test statistics.

p.value

lower-triangle matrix of the p-values for the pairwise tests.

alternative

a character string describing the alternative hypothesis.

p.adjust.method

a character string describing the method for p-value adjustment.

model

a data frame of the input data.

dist

a string that denotes the test distribution.

References

Duncan, D. B. (1955) Multiple range and multiple F tests, Biometrics 11, 1–42.

See Also

Tukey, TukeyHSD tukeyTest

Examples

fit <- aov(weight ~ feed, chickwts)
shapiro.test(residuals(fit))
bartlett.test(weight ~ feed, chickwts)
anova(fit)

## also works with fitted objects of class aov
res <- duncanTest(fit)
summary(res)
summaryGroup(res)

PMCMRplus documentation built on May 29, 2024, 8:34 a.m.