uryWigginsHochbergTest: Ury, Wiggins, Hochberg Test

View source: R/uryWigginsHochbergTest.R

uryWigginsHochbergTestR Documentation

Ury, Wiggins, Hochberg Test

Description

Performs Ury-Wiggins and Hochberg's all-pairs comparison test for normally distributed data with unequal variances.

Usage

uryWigginsHochbergTest(x, ...)

## Default S3 method:
uryWigginsHochbergTest(x, g, p.adjust.method = p.adjust.methods, ...)

## S3 method for class 'formula'
uryWigginsHochbergTest(
  formula,
  data,
  subset,
  na.action,
  p.adjust.method = p.adjust.methods,
  ...
)

## S3 method for class 'aov'
uryWigginsHochbergTest(x, p.adjust.method = p.adjust.methods, ...)

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.

p.adjust.method

method for adjusting p values (see p.adjust).

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 but unequal groups variances the tests of Ury-Wiggins and Hochberg 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). Ury-Wiggins and Hochberg all-pairs test statistics are given by

t_{ij} \frac{\bar{X}_i - \bar{X_j}} {\left( s^2_j / n_j + s^2_i / n_i \right)^{1/2}}, ~~ (i \ne j)

with s^2_i the variance of the i-th group. The null hypothesis is rejected (two-tailed) if

\mathrm{Pr} \left\{ |t_{ij}| \ge t_{v_{ij}\alpha'/2} | \mathrm{H} \right\}_{ij} = \alpha,

with Welch's approximate equation for degree of freedom as

v_{ij} = \frac{\left( s^2_i / n_i + s^2_j / n_j \right)^2} {s^4_i / n^2_i \left(n_i - 1\right) + s^4_j / n^2_j \left(n_j - 1\right)}.

The p-values are computed from the TDist-distribution. The type of test depends on the selected p-value adjustment method (see also p.adjust):

bonferroni

the Ury-Wiggins test is performed with Bonferroni adjusted p-values.

hochberg

the Hochberg test is performed with Hochberg's adjusted p-values

.

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

Hochberg, Y. (1976) A Modification of the T-Method of Multiple Comparisons for a One-Way Layout With Unequal Variances, Journal of the American Statistical Association 71, 200–203.

Ury, H. and Wiggins, A. D. (1971) Large Sample and Other Multiple Comparisons Among Means, British Journal of Mathematical and Statistical Psychology 24, 174–194.

See Also

dunnettT3Test tamhaneT2Test TDist

Examples

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

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


PMCMRplus documentation built on Nov. 27, 2023, 1:08 a.m.