R: Nemenyi's All-Pairs Rank Comparison Test

kwAllPairsNemenyiTest {PMCMRplus} | R Documentation

## Nemenyi's All-Pairs Rank Comparison Test

### Description

Performs Nemenyi's non-parametric all-pairs comparison test for Kruskal-type ranked data.

### Usage

    kwAllPairsNemenyiTest(x, ...)

    ## Default S3 method:
    kwAllPairsNemenyiTest(x, g, dist = c("Tukey", "Chisquare"), ...)

    ## S3 method for class 'formula'
    kwAllPairsNemenyiTest(
      formula,
      data,
      subset,
      na.action,
      dist = c("Tukey", "Chisquare"),
      ...
    )

### 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.
`dist` | the distribution for determining the p-value. Defaults to `"Tukey"`.
`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 `NA`s. Defaults to `getOption("na.action")`.

### Details

For all-pairs comparisons in an one-factorial layout with non-normally distributed residuals Nemenyi's non-parametric test can be performed. A total of m = k(k-1)/2 hypotheses can be tested. The null hypothesis H_{ij}: θ_i(x) = θ_j(x) is tested in the two-tailed test against the alternative A_{ij}: θ_i(x) \ne θ_j(x), ~~ i \ne j.

Let R_{ij} be the rank of X_{ij}, where X_{ij} is jointly ranked from ≤ft\{1, 2, …, N \right\}, ~~ N = ∑_{i=1}^k n_i, then the test statistic under the absence of ties is calculated as

SEE PDF

with \bar{R}_j, \bar{R}_i the mean rank of the i-th and j-th group and the expected variance as

SEE PDF

A pairwise difference is significant, if |t_{ij}|/√{2} > q_{kv}, with k the number of groups and v = ∞ the degree of freedom.

Sachs(1997) has given a modified approach for Nemenyi's test in the presence of ties for N > 6, k > 4 provided that the `kruskalTest` indicates significance: In the presence of ties, the test statistic is corrected according to \hat{t}_{ij} = t_{ij} / C, with

SEE PDF

The function provides two different `dist` for p-value estimation:

Tukey

  The p-values are computed from the studentized range distribution (alias `Tukey`), \mathrm{Pr} ≤ft\{ t_{ij} √{2} ≥ q_{k∞α} | mathrm{H} \right\} = α.

Chisquare

  The p-values are computed from the `Chisquare` distribution with v = k - 1 degree of freedom.

### 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

Nemenyi, P. (1963) Distribution-free Multiple Comparisons. Ph.D. thesis, Princeton University.

Sachs, L. (1997) Angewandte Statistik. Berlin: Springer.

Wilcoxon, F., Wilcox, R. A. (1964) Some rapid approximate statistical procedures. Pearl River: Lederle Laboratories.

### See Also

`Tukey`, `Chisquare`, `p.adjust`, `kruskalTest`, `kwAllPairsDunnTest`, `kwAllPairsConoverTest`

### Examples

    ## Data set InsectSprays
    ## Global test
    kruskalTest(count ~ spray, data = InsectSprays)

    ## Conover's all-pairs comparison test
    ## single-step means Tukey's p-adjustment
    ans <- kwAllPairsConoverTest(count ~ spray, data = InsectSprays,
                                 p.adjust.method = "single-step")
    summary(ans)

    ## Dunn's all-pairs comparison test
    ans <- kwAllPairsDunnTest(count ~ spray, data = InsectSprays,
                                 p.adjust.method = "bonferroni")
    summary(ans)

    ## Nemenyi's all-pairs comparison test
    ans <- kwAllPairsNemenyiTest(count ~ spray, data = InsectSprays)
    summary(ans)

[Package PMCMRplus version 1.7.1 Index]