# 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

 ```1 2 3 4``` ```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 ≤ x], otherwise, P[X > x].

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

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

## Author(s)

Kurt Hornik; efficiency improvement by Ivo Ugrina.

`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.
 ```1 2 3 4 5 6 7 8``` ```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, ")")) } ```