Learn R Programming

stats (version 3.3.2)

SignRank: Distribution of the Wilcoxon Signed Rank Statistic

Description

Density, distribution function, quantile function and random generation for the distribution of the Wilcoxon Signed Rank statistic obtained from a sample with size n.

Usage

dsignrank(x, n, log = FALSE)
psignrank(q, n, lower.tail = TRUE, log.p = FALSE)
qsignrank(p, n, lower.tail = TRUE, log.p = FALSE)
rsignrank(nn, n)

Arguments

x, q
vector of quantiles.
p
vector of probabilities.
nn
number of observations. If length(nn) > 1, the length is taken to be the number required.
n
number(s) of observations in the sample(s). A positive integer, or a vector of such integers.
log, log.p
logical; if TRUE, probabilities p are given as log(p).
lower.tail
logical; if TRUE (default), probabilities are \(P[X \le x]\), otherwise, \(P[X > x]\).

Value

dsignrank gives the density, psignrank gives the distribution function, qsignrank gives the quantile function, and rsignrank generates random deviates. The length of the result is determined by nn for rsignrank, and is the maximum of the lengths of the numerical arguments for the other functions. The numerical arguments other than nn are recycled to the length of the result. Only the first elements of the logical arguments are used.

Details

This distribution is obtained as follows. Let x be a sample of size n from a continuous distribution symmetric about the origin. Then the Wilcoxon signed rank statistic is the sum of the ranks of the absolute values x[i] for which x[i] is positive. This statistic takes values between \(0\) and \(n(n+1)/2\), and its mean and variance are \(n(n+1)/4\) and \(n(n+1)(2n+1)/24\), respectively. If either of the first two arguments is a vector, the recycling rule is used to do the calculations for all combinations of the two up to the length of the longer vector.

See Also

wilcox.test to calculate the statistic from data, find p values and so on. Distributions for standard distributions, including dwilcox for the distribution of two-sample Wilcoxon rank sum statistic.

Examples

Run this code
require(graphics)

par(mfrow = c(2,2))
for(n in c(4:5,10,40)) {
  x <- seq(0, n*(n+1)/2, length = 501)
  plot(x, dsignrank(x, n = n), type = "l",
       main = paste0("dsignrank(x, n = ", n, ")"))
}

Run the code above in your browser using DataLab