# Spearman's rank correlation coefficient

Short description: Nonparametric measure of rank correlation
A Spearman correlation of $\displaystyle{ 1 }$ results when the two variables being compared are monotonically related, even if their relationship is not linear. This means that all data points with greater $\displaystyle{ x }$ values than that of a given data point will have greater $\displaystyle{ y }$ values as well. In contrast, this does not give a perfect Pearson correlation.
When the data are roughly elliptically distributed and there are no prominent outliers, the Spearman correlation and Pearson correlation give similar values.
The Spearman correlation is less sensitive than the Pearson correlation to strong outliers that are in the tails of both samples. That is because Spearman's ρ limits the outlier to the value of its rank.

In statistics, Spearman's rank correlation coefficient or Spearman's ρ, named after Charles Spearman[1] and often denoted by the Greek letter $\displaystyle{ \rho }$ (rho) or as $\displaystyle{ r_s }$, is a nonparametric measure of rank correlation (statistical dependence between the rankings of two variables). It assesses how well the relationship between two variables can be described using a monotonic function.

The Spearman correlation between two variables is equal to the Pearson correlation between the rank values of those two variables; while Pearson's correlation assesses linear relationships, Spearman's correlation assesses monotonic relationships (whether linear or not). If there are no repeated data values, a perfect Spearman correlation of +1 or −1 occurs when each of the variables is a perfect monotone function of the other.

Intuitively, the Spearman correlation between two variables will be high when observations have a similar (or identical for a correlation of 1) rank (i.e. relative position label of the observations within the variable: 1st, 2nd, 3rd, etc.) between the two variables, and low when observations have a dissimilar (or fully opposed for a correlation of −1) rank between the two variables.

Spearman's coefficient is appropriate for both continuous and discrete ordinal variables.[2][3] Both Spearman's $\displaystyle{ \rho }$ and Kendall's $\displaystyle{ \tau }$ can be formulated as special cases of a more general correlation coefficient.

## Applications

The cooefficient can be used to determine how well data fits a model,[4] or to determine the similarity of text documents.[5]

## Definition and calculation

The Spearman correlation coefficient is defined as the Pearson correlation coefficient between the rank variables.[6]

For a sample of size n, the n raw scores $\displaystyle{ X_i, Y_i }$ are converted to ranks $\displaystyle{ \operatorname{R}({X_i}), \operatorname{R}({Y_i}) }$, and $\displaystyle{ r_s }$ is computed as

$\displaystyle{ r_s = \rho_{\operatorname{R}(X),\operatorname{R}(Y)} = \frac{\operatorname{cov}(\operatorname{R}(X), \operatorname{R}(Y))} {\sigma_{\operatorname{R}(X)} \sigma_{\operatorname{R}(Y)}}, }$

where

$\displaystyle{ \rho }$ denotes the usual Pearson correlation coefficient, but applied to the rank variables,
$\displaystyle{ \operatorname{cov}(\operatorname{R}(X), \operatorname{R}(Y)) }$ is the covariance of the rank variables,
$\displaystyle{ \sigma_{\operatorname{R}(X)} }$ and $\displaystyle{ \sigma_{\operatorname{R}(Y)} }$ are the standard deviations of the rank variables.

Only if all n ranks are distinct integers, it can be computed using the popular formula

$\displaystyle{ r_s = 1 - \frac{6 \sum d_i^2}{n(n^2 - 1)}, }$

where

$\displaystyle{ d_i = \operatorname{R}(X_i) - \operatorname{R}(Y_i) }$ is the difference between the two ranks of each observation,
n is the number of observations.
[Proof]

Consider a bivariate sample $\displaystyle{ (x_i, y_i),\, i=1\dots, n }$ with corresponding ranks $\displaystyle{ (R(X_i), R(Y_i)) = (R_i, S_i) }$. Then the Spearman correlation coefficient of $\displaystyle{ x,y }$ is

$\displaystyle{ r_{s} = \frac{ \frac{1}{n}\sum_{i=1}^{n}R_{i}S_{i} - \overline{R}\,\overline{S} }{ \sigma_{R} \sigma_{S} }, }$

where, as usual, $\displaystyle{ \overline{R} = \textstyle\frac{1}{n}\textstyle\sum_{i=1}^{n}R_{i} }$, $\displaystyle{ \overline{S} = \textstyle\frac{1}{n}\textstyle\sum_{i=1}^{n}S_{i} }$, $\displaystyle{ \sigma_{R}^{2} = \textstyle\frac{1}{n}\textstyle\sum_{i=1}^{n}(R_{i} - \overline{R})^{2} }$, and $\displaystyle{ \sigma_{S}^{2} = \textstyle\frac{1}{n}\textstyle\sum_{i=1}^{n}(S_{i} - \overline{S})^{2} }$,

We shall show that $\displaystyle{ r_{s} }$ can be expressed purely in terms of $\displaystyle{ d_{i} := R_{i} - S_{i} }$, provided we assume that there be no ties within each sample.

Under this assumption, we have that $\displaystyle{ R,S }$ can be viewed as random variables distributed like a uniformly distributed random variable, $\displaystyle{ U }$, on $\displaystyle{ \{1,2,\ldots,n\} }$. Hence $\displaystyle{ \overline{R}=\overline{S}=\mathbb{E}[U] }$ and $\displaystyle{ \sigma_{R}^{2}=\sigma_{S}^{2}=\mathrm{Var}(U)=\mathbb{E}[U^{2}]-\mathbb{E}[U]^{2} }$, where $\displaystyle{ \mathbb{E}[U] = \textstyle\frac{1}{n}\textstyle\sum_{i=1}^{n} i = \textstyle\frac{(n+1)}{2} }$, $\displaystyle{ \mathbb{E}[U^{2}] = \textstyle\frac{1}{n}\textstyle\sum_{i=1}^{n} i^{2} = \textstyle\frac{(n+1)(2n+1)}{6} }$, and thus $\displaystyle{ \mathrm{Var}(U) = \textstyle\frac{(n+1)(2n+1)}{6} - \left(\textstyle\frac{(n+1)}{2}\right)^{2} = \textstyle\frac{n^{2}-1}{12} }$. (These sums can be computed using the formulas for the triangular number and Square pyramidal number, or basic summation results from discrete mathematics.)

Observe now that

\displaystyle{ \begin{align} \frac{1}{n}\sum_{i=1}^{n}R_{i}S_{i} - \overline{R}\overline{S} &= \frac{1}{n}\sum_{i=1}^{n}\frac{1}{2}(R_{i}^{2} + S_{i}^{2} - d_{i}^{2}) - \overline{R}^{2}\\ &= \frac{1}{2}\frac{1}{n}\sum_{i=1}^{n}R_{i}^{2} + \frac{1}{2}\frac{1}{n}\sum_{i=1}^{n}S_{i}^{2} - \frac{1}{2n}\sum_{i=1}^{n}d_{i}^{2} - \overline{R}^{2}\\ &= (\frac{1}{n}\sum_{i=1}^{n}R_{i}^{2} - \overline{R}^{2}) - \frac{1}{2n}\sum_{i=1}^{n}d_{i}^{2}\\ &= \sigma_{R}^{2} - \frac{1}{2n}\sum_{i=1}^{n}d_{i}^{2}\\ &= \sigma_{R}\sigma_{S} - \frac{1}{2n}\sum_{i=1}^{n}d_{i}^{2}\\ \end{align} }

Putting this all together thus yields

$\displaystyle{ r_s = \frac{ \sigma_{R}\sigma_{S} - \frac{1}{2n}\sum_{i=1}^{n}d_{i}^{2} }{ \sigma_{R}\sigma_{S} } = 1 - \frac{ \sum_{i=1}^{n}d_{i}^{2} }{ 2n \cdot \frac{n^{2}-1}{12} } = 1 - \frac{ 6\sum_{i=1}^{n}d_{i}^{2} }{n(n^{2} - 1)}. }$

Identical values are usually[7] each assigned fractional ranks equal to the average of their positions in the ascending order of the values, which is equivalent to averaging over all possible permutations.

If ties are present in the data set, the simplified formula above yields incorrect results: Only if in both variables all ranks are distinct, then $\displaystyle{ \sigma_{\operatorname{R}(X)} \sigma_{\operatorname{R}(Y)} = \operatorname{Var}{(\operatorname{R}(X))} = \operatorname{Var}{(\operatorname{R}(Y))} = (n^2 - 1)/12 }$ (calculated according to biased variance). The first equation — normalizing by the standard deviation — may be used even when ranks are normalized to [0, 1] ("relative ranks") because it is insensitive both to translation and linear scaling.

The simplified method should also not be used in cases where the data set is truncated; that is, when the Spearman's correlation coefficient is desired for the top X records (whether by pre-change rank or post-change rank, or both), the user should use the Pearson correlation coefficient formula given above.[8]

## Related quantities

Main page: Correlation and dependence

There are several other numerical measures that quantify the extent of statistical dependence between pairs of observations. The most common of these is the Pearson product-moment correlation coefficient, which is a similar correlation method to Spearman's rank, that measures the “linear” relationships between the raw numbers rather than between their ranks.

An alternative name for the Spearman rank correlation is the “grade correlation”;[9] in this, the “rank” of an observation is replaced by the “grade”. In continuous distributions, the grade of an observation is, by convention, always one half less than the rank, and hence the grade and rank correlations are the same in this case. More generally, the “grade” of an observation is proportional to an estimate of the fraction of a population less than a given value, with the half-observation adjustment at observed values. Thus this corresponds to one possible treatment of tied ranks. While unusual, the term “grade correlation” is still in use.[10]

## Interpretation

Positive and negative Spearman rank correlations
A positive Spearman correlation coefficient corresponds to an increasing monotonic trend between X and Y.
A negative Spearman correlation coefficient corresponds to a decreasing monotonic trend between X and Y.

The sign of the Spearman correlation indicates the direction of association between X (the independent variable) and Y (the dependent variable). If Y tends to increase when X increases, the Spearman correlation coefficient is positive. If Y tends to decrease when X increases, the Spearman correlation coefficient is negative. A Spearman correlation of zero indicates that there is no tendency for Y to either increase or decrease when X increases. The Spearman correlation increases in magnitude as X and Y become closer to being perfectly monotone functions of each other. When X and Y are perfectly monotonically related, the Spearman correlation coefficient becomes 1. A perfectly monotone increasing relationship implies that for any two pairs of data values Xi, Yi and Xj, Yj, that XiXj and YiYj always have the same sign. A perfectly monotone decreasing relationship implies that these differences always have opposite signs.

The Spearman correlation coefficient is often described as being "nonparametric". This can have two meanings. First, a perfect Spearman correlation results when X and Y are related by any monotonic function. Contrast this with the Pearson correlation, which only gives a perfect value when X and Y are related by a linear function. The other sense in which the Spearman correlation is nonparametric is that its exact sampling distribution can be obtained without requiring knowledge (i.e., knowing the parameters) of the joint probability distribution of X and Y.

## Example

In this example, the arbitrary raw data in the table below is used to calculate the correlation between the IQ of a person with the number of hours spent in front of TV per week [fictitious values used].

IQ, $\displaystyle{ X_i }$ Hours of TV per week, $\displaystyle{ Y_i }$
106 7
100 27
86 2
101 50
99 28
103 29
97 20
113 12
112 6
110 17

Firstly, evaluate $\displaystyle{ d^2_i }$. To do so use the following steps, reflected in the table below.

1. Sort the data by the first column ($\displaystyle{ X_i }$). Create a new column $\displaystyle{ x_i }$ and assign it the ranked values 1, 2, 3, ..., n.
2. Next, sort the augmented (with $\displaystyle{ x_i }$) data by the second column ($\displaystyle{ Y_i }$). Create a fourth column $\displaystyle{ y_i }$ and similarly assign it the ranked values 1, 2, 3, ..., n.
3. Create a fifth column $\displaystyle{ d_i }$ to hold the differences between the two rank columns ($\displaystyle{ x_i }$ and $\displaystyle{ y_i }$).
4. Create one final column $\displaystyle{ d^2_i }$ to hold the value of column $\displaystyle{ d_i }$ squared.
IQ, $\displaystyle{ X_i }$ Hours of TV per week, $\displaystyle{ Y_i }$ rank $\displaystyle{ x_i }$ rank $\displaystyle{ y_i }$ $\displaystyle{ d_i }$ $\displaystyle{ d^2_i }$
86 2 1 1 0 0
97 20 2 6 −4 16
99 28 3 8 −5 25
100 27 4 7 −3 9
101 50 5 10 −5 25
103 29 6 9 −3 9
106 7 7 3 4 16
110 17 8 5 3 9
112 6 9 2 7 49
113 12 10 4 6 36

With $\displaystyle{ d^2_i }$ found, add them to find $\displaystyle{ \sum d_i^2 = 194 }$. The value of n is 10. These values can now be substituted back into the equation

$\displaystyle{ \rho = 1 - \frac{6 \sum d_i^2}{n(n^2 - 1)} }$

to give

$\displaystyle{ \rho = 1 - \frac{6 \times 194}{10(10^2 - 1)}, }$

which evaluates to ρ = −29/165 = −0.175757575... with a p-value = 0.627188 (using the t-distribution).

Chart of the data presented. It can be seen that there might be a negative correlation, but that the relationship does not appear definitive.

That the value is close to zero shows that the correlation between IQ and hours spent watching TV is very low, although the negative value suggests that the longer the time spent watching television the lower the IQ. In the case of ties in the original values, this formula should not be used; instead, the Pearson correlation coefficient should be calculated on the ranks (where ties are given ranks, as described above).

## Confidence intervals

Confidence intervals for Spearman's ρ can be easily obtained using the Jackknife Euclidean likelihood approach in de Carvalho and Marques (2012).[11] The confidence interval with level $\displaystyle{ \alpha }$ is based on a Wilks' theorem given in the latter paper, and is given by

$\displaystyle{ \left\{\theta: \frac{\{\sum_{i = 1}^n(Z_i - \theta)\}^2}{\sum_{i = 1}^n (Z_i - \theta)^2} \leq \chi^2_{1, \alpha}\right\}, }$

where $\displaystyle{ \chi^2_{1, \alpha} }$ is the $\displaystyle{ \alpha }$ quantile of a chi-square distribution with one degree of freedom, and the $\displaystyle{ Z_i }$ are jackknife pseudo-values. This approach is implemented in the R package spearmanCI.

## Determining significance

One approach to test whether an observed value of ρ is significantly different from zero (r will always maintain −1 ≤ r ≤ 1) is to calculate the probability that it would be greater than or equal to the observed r, given the null hypothesis, by using a permutation test. An advantage of this approach is that it automatically takes into account the number of tied data values in the sample and the way they are treated in computing the rank correlation.

Another approach parallels the use of the Fisher transformation in the case of the Pearson product-moment correlation coefficient. That is, confidence intervals and hypothesis tests relating to the population value ρ can be carried out using the Fisher transformation:

$\displaystyle{ F(r) = \frac{1}{2} \ln\frac{1 + r}{1 - r} = \operatorname{artanh} r. }$

If F(r) is the Fisher transformation of r, the sample Spearman rank correlation coefficient, and n is the sample size, then

$\displaystyle{ z = \sqrt{\frac{n - 3}{1.06}} F(r) }$

is a z-score for r, which approximately follows a standard normal distribution under the null hypothesis of statistical independence (ρ = 0).[12][13]

One can also test for significance using

$\displaystyle{ t = r \sqrt{\frac{n - 2}{1 - r^2}}, }$

which is distributed approximately as Student's t-distribution with n − 2 degrees of freedom under the null hypothesis.[14] A justification for this result relies on a permutation argument.[15]

A generalization of the Spearman coefficient is useful in the situation where there are three or more conditions, a number of subjects are all observed in each of them, and it is predicted that the observations will have a particular order. For example, a number of subjects might each be given three trials at the same task, and it is predicted that performance will improve from trial to trial. A test of the significance of the trend between conditions in this situation was developed by E. B. Page[16] and is usually referred to as Page's trend test for ordered alternatives.

## Correspondence analysis based on Spearman's ρ

Classic correspondence analysis is a statistical method that gives a score to every value of two nominal variables. In this way the Pearson correlation coefficient between them is maximized.

There exists an equivalent of this method, called grade correspondence analysis, which maximizes Spearman's ρ or Kendall's τ.[17]

## Approximating Spearman's ρ from a stream

There are two existing approaches to approximating the Spearman's rank correlation coefficient from streaming data.[18][19] The first approach[18] involves coarsening the joint distribution of $\displaystyle{ (X,Y) }$. For continuous $\displaystyle{ X, Y }$ values: $\displaystyle{ m_{1}, m_{2} }$ cutpoints are selected for $\displaystyle{ X }$ and $\displaystyle{ Y }$ respectively, discretizing these random variables. Default cutpoints are added at $\displaystyle{ -\infty }$ and $\displaystyle{ \infty }$. A count matrix of size $\displaystyle{ (m_{1}+1) \times (m_{2}+1) }$, denoted $\displaystyle{ M }$, is then constructed where $\displaystyle{ M[i,j] }$ stores the number of observations that fall into the two-dimensional cell indexed by $\displaystyle{ (i,j) }$. For streaming data, when a new observation arrives, the appropriate $\displaystyle{ M[i,j] }$ element is incremented. The Spearman's rank correlation can then be computed, based on the count matrix $\displaystyle{ M }$, using linear algebra operations (Algorithm 2[18]). Note that for discrete random variables, no discretization procedure is necessary. This method is applicable to stationary streaming data as well as large data sets. For non-stationary streaming data, where the Spearman's rank correlation coefficient may change over time, the same procedure can be applied, but to a moving window of observations. When using a moving window, memory requirements grow linearly with chosen window size.

The second approach to approximating the Spearman's rank correlation coefficient from streaming data involves the use of Hermite series based estimators.[19] These estimators, based on Hermite polynomials, allow sequential estimation of the probability density function and cumulative distribution function in univariate and bivariate cases. Bivariate Hermite series density estimators and univariate Hermite series based cumulative distribution function estimators are plugged into a large sample version of the Spearman's rank correlation coefficient estimator, to give a sequential Spearman's correlation estimator. This estimator is phrased in terms of linear algebra operations for computational efficiency (equation (8) and algorithm 1 and 2[19]). These algorithms are only applicable to continuous random variable data, but have certain advantages over the count matrix approach in this setting. The first advantage is improved accuracy when applied to large numbers of observations. The second advantage is that the Spearman's rank correlation coefficient can be computed on non-stationary streams without relying on a moving window. Instead, the Hermite series based estimator uses an exponential weighting scheme to track time-varying Spearman's rank correlation from streaming data, which has constant memory requirements with respect to "effective" moving window size. A software implementation of these Hermite series based algorithms exists [20] and is discussed in Software implementations.

## Software implementations

• R's statistics base-package implements the test cor.test(x, y, method = "spearman") in its "stats" package (also cor(x, y, method = "spearman") will work. The package spearmanCI computes confidence intervals. The package hermiter[20] computes fast batch estimates of the Spearman correlation along with sequential estimates (i.e. estimates that are updated in an online/incremental manner as new observations are incorporated).
• Stata implementation:  spearman varlist  calculates all pairwise correlation coefficients for all variables in varlist.
• MATLAB implementation: [r,p] = corr(x,y,'Type','Spearman') where r is the Spearman's rank correlation coefficient, p is the p-value, and x and y are vectors.[21]
• Python has many different implementation of the spearman correlation statistic: it can be computed with the spearmanr function of the sci.py.stats module, as well as with the DataFrame.corr(method='spearman') method from the pandas library, and the corr(x, y, method='spearman') function from the statistical package pingouin.

## References

1. Spearman, C. (January 1904). "The Proof and Measurement of Association between Two Things". The American Journal of Psychology 15 (1): 72–101. doi:10.2307/1412159.
2. Lehman, Ann (2005). Jmp For Basic Univariate And Multivariate Statistics: A Step-by-step Guide. Cary, NC: SAS Press. p. 123. ISBN 978-1-59047-576-8.
3. Royal Geographic Society. "A Guide to Spearman’s Rank".
4. Myers, Jerome L.; Well, Arnold D. (2003). Research Design and Statistical Analysis (2nd ed.). Lawrence Erlbaum. pp. 508. ISBN 978-0-8058-4037-7.
5. Dodge, Yadolah (2010). The Concise Encyclopedia of Statistics. Springer-Verlag New York. p. 502. ISBN 978-0-387-31742-7.
6. Al Jaber, Ahmed Odeh; Elayyan, Haifaa Omar (2018). Toward Quality Assurance and Excellence in Higher Education. River Publishers. pp. 284. ISBN 978-87-93609-54-9.
7. Yule, G. U.; Kendall, M. G. (1968). An Introduction to the Theory of Statistics (14th ed.). Charles Griffin & Co.. p. 268.
8. Piantadosi, J.; Howlett, P.; Boland, J. (2007). "Matching the grade correlation coefficient using a copula with maximum disorder". Journal of Industrial and Management Optimization 3 (2): 305–312. doi:10.3934/jimo.2007.3.305.
9. de Carvalho, M.; Marques, F. (2012). "Jackknife Euclidean likelihood-based inference for Spearman's rho". North American Actuarial Journal 16 (4): 487‒492. doi:10.1080/10920277.2012.10597644.
10. Choi, S. C. (1977). "Tests of Equality of Dependent Correlation Coefficients". Biometrika 64 (3): 645–647. doi:10.1093/biomet/64.3.645.
11. Fieller, E. C.; Hartley, H. O.; Pearson, E. S. (1957). "Tests for rank correlation coefficients. I". Biometrika 44 (3–4): 470–481. doi:10.1093/biomet/44.3-4.470.
12. Press; Vettering; Teukolsky; Flannery (1992). Numerical Recipes in C: The Art of Scientific Computing (2nd ed.). Cambridge University Press. p. 640. ISBN 9780521437202.
13. Kendall, M. G.; Stuart, A. (1973). The Advanced Theory of Statistics, Volume 2: Inference and Relationship. Griffin. ISBN 978-0-85264-215-3.
14. Page, E. B. (1963). "Ordered hypotheses for multiple treatments: A significance test for linear ranks". Journal of the American Statistical Association 58 (301): 216–230. doi:10.2307/2282965.
15. Kowalczyk, T.; Pleszczyńska, E.; Ruland, F., eds (2004). Grade Models and Methods for Data Analysis with Applications for the Analysis of Data Populations. Studies in Fuzziness and Soft Computing. 151. Berlin Heidelberg New York: Springer Verlag. ISBN 978-3-540-21120-4.
16. Xiao, W. (2019). "Novel Online Algorithms for Nonparametric Correlations with Application to Analyze Sensor Data". 2019 IEEE International Conference on Big Data (Big Data). pp. 404–412. doi:10.1109/BigData47090.2019.9006483. ISBN 978-1-7281-0858-2.
17. Stephanou, Michael; Varughese, Melvin (July 2021). "Sequential estimation of Spearman rank correlation using Hermite series estimators". Journal of Multivariate Analysis 186: 104783. doi:10.1016/j.jmva.2021.104783.
18. Stephanou, M. and Varughese, M (2023). "Hermiter: R package for sequential nonparametric estimation". Computational Statistics. doi:10.1007/s00180-023-01382-0.