steelTest: Steel's Many-to-One Rank Test

View source: R/steelTest.R

steelTestR Documentation

Steel's Many-to-One Rank Test

Description

Performs Steel's non-parametric many-to-one comparison test for Wilcox-type ranked data.

Usage

steelTest(x, ...)

## Default S3 method:
steelTest(x, g, alternative = c("greater", "less"), ...)

## S3 method for class 'formula'
steelTest(
  formula,
  data,
  subset,
  na.action,
  alternative = c("greater", "less"),
  ...
)

Arguments

x

a numeric vector of data values, or a list of numeric data vectors.

...

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.

alternative

the alternative hypothesis. Defaults to greater

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 many-to-one comparisons (pairwise comparisons with one control) in an one-factorial balanced layout with non-normally distributed residuals Steels's non-parametric single-step test can be performed. Let there be k treatment levels (excluding the control), then k pairwise comparisons can be performed between the i-th treatment level and the control. H_i: \theta_0 = \theta_i is tested in the one-tailed case (less) against A_i: \theta_0 > \theta_i, ~~ (1 \le i \le k).

For each control - treatment level the data are ranked in increasing order. The ranksum R_i for the i-th treatment level is compared to a critical R value and is significantly(p = 0.05) less, if R_i \le R. For the alternative = "greater" the sign is changed.

The function does not return p-values. Instead the critical R-values as given in the tables of USEPA (2002) for \alpha = 0.05 (one-sided, less) are looked up according to the balanced sample sizes (n) and the order number of the dose level (i).

Value

A list with class "osrt" that contains 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

the estimated statistic(s)

crit.value

critical values for \alpha = 0.05.

alternative

a character string describing the alternative hypothesis.

parameter

the parameter(s) of the test distribution.

dist

a string that denotes the test distribution.

There are print and summary methods available.

Source

The critical rank sum values were taken from Table E.5 of USEPA (2002).

USEPA (2002) Short-term Methods for Estimating the Chronic Toxicity of Effluents and Receiving Waters to Freshwater Organisms, 4th edition, EPA-821-R-02-013.

Note

Steel's Many-to-One Rank test is only applicable for balanced designs and directional hypotheses. An error message will occur, if the design is unbalanced. In the current implementation, only one-sided tests on the level of \alpha = 0.05 can be performed.

References

Steel, R. G. D. (1959) A multiple comparison rank sum test: treatments versus control, Biometrics 15, 560–572.

See Also

wilcox.test, pairwise.wilcox.test, manyOneUTest, flignerWolfeTest, shirleyWilliamsTest, kwManyOneDunnTest, kwManyOneNdwTest, kwManyOneConoverTest, print.osrt, summary.osrt

Examples

## Example from Sachs (1997, p. 402)
x <- c(106, 114, 116, 127, 145,
110, 125, 143, 148, 151,
136, 139, 149, 160, 174)
g <- gl(3,5)
levels(g) <- c("0", "I", "II")

## Steel's Test
steelTest(x ~ g)


## Example from USEPA (2002):
## Reproduction data from a Ceriodaphnia dubia
## 7-day chronic test to several concentrations
## of effluent. Dose level 50% is excluded.
x <- c(20, 26, 26, 23, 24, 27, 26, 23, 27, 24,
13, 15, 14, 13, 23, 26, 0, 25, 26, 27,
18, 22, 13, 13, 23, 22, 20, 22, 23, 22,
14, 22, 20, 23, 20, 23, 25, 24, 25, 21,
9, 0, 9, 7, 6, 10, 12, 14, 9, 13,
rep(0,10))
g <- gl(6, 10)
levels(g) <- c("Control", "3%", "6%", "12%", "25%", "50%")

## NOEC at 3%, LOEC at 6%
steelTest(x ~ g, subset = g != "50%", alternative = "less")




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