kruskal.test {stats} | R Documentation |
Performs a Kruskal-Wallis rank sum test.
kruskal.test(x, ...) ## Default S3 method: kruskal.test(x, g, ...) ## S3 method for class 'formula': kruskal.test(formula, data, subset, na.action, ...)
x |
a numeric vector of data values, or a list of numeric data vectors. |
g |
a vector or factor object giving the group for the
corresponding elements of x . Ignored if x is a
list. |
formula |
a formula of the form lhs ~ rhs where lhs
gives the data values and rhs the corresponding groups. |
data |
an optional data frame containing the variables in the model 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") . |
... |
further arguments to be passed to or from methods. |
kruskal.test
performs a Kruskal-Wallis rank sum test of the
null that the location parameters of the distribution of x
are the same in each group (sample). The alternative is that they
differ in at least one.
If x
is a list, its elements are taken as the samples to be
compared, and hence have to be numeric data vectors. In this case,
g
is ignored, and one can simply use kruskal.test(x)
to perform the test. If the samples are not yet contained in a
list, use kruskal.test(list(x, ...))
.
Otherwise, x
must be a numeric data vector, and g
must
be a vector or factor object of the same length as x
giving
the group for the corresponding elements of x
.
A list with class "htest"
containing the following components:
statistic |
the Kruskal-Wallis rank sum statistic. |
parameter |
the degrees of freedom of the approximate chi-squared distribution of the test statistic. |
p.value |
the p-value of the test. |
method |
the character string "Kruskal-Wallis rank sum test" . |
data.name |
a character string giving the names of the data. |
Myles Hollander & Douglas A. Wolfe (1973), Nonparametric statistical inference. New York: John Wiley & Sons. Pages 115–120.
The Wilcoxon rank sum test (wilcox.test
) as the special
case for two samples;
lm
together with anova
for performing
one-way location analysis under normality assumptions; with Student's
t test (t.test
) as the special case for two samples.
## Hollander & Wolfe (1973), 116. ## Mucociliary efficiency from the rate of removal of dust in normal ## subjects, subjects with obstructive airway disease, and subjects ## with asbestosis. x <- c(2.9, 3.0, 2.5, 2.6, 3.2) # normal subjects y <- c(3.8, 2.7, 4.0, 2.4) # with obstructive airway disease z <- c(2.8, 3.4, 3.7, 2.2, 2.0) # with asbestosis kruskal.test(list(x, y, z)) ## Equivalently, x <- c(x, y, z) g <- factor(rep(1:3, c(5, 4, 5)), labels = c("Normal subjects", "Subjects with obstructive airway disease", "Subjects with asbestosis")) kruskal.test(x, g) ## Formula interface. data(airquality) boxplot(Ozone ~ Month, data = airquality) kruskal.test(Ozone ~ Month, data = airquality)