Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

kwAllPairsNemenyiTest

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 NAs. 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

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)

PMCMRplus

Calculate Pairwise Multiple Comparisons of Mean Rank Sums Extended

v1.9.0
GPL (>= 3)
Authors
Thorsten Pohlert [aut, cre] (<https://orcid.org/0000-0003-3855-3025>)
Initial release
2021-01-12

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.