cor.test {ctest} | R Documentation

## Test for Zero Correlation

### Description

Tests whether two samples come from uncorrelated (independent) populations, using Pearson's product moment correlation coefficient, Kendall's tau, or Spearman's rho.

### Usage

    cor.test(x, y,
             alternative = c("two.sided", "less", "greater"),
             method = c("pearson", "kendall", "spearman"), exact = NULL)

### Arguments

`x, y` | numeric vectors of data values. `x` and `y` must have the same length.
`alternative` | indicates the alternative hypothesis and must be one of `"two.sided"`, `"greater"` or `"less"`. You can specify just the initial letter.
`method` | a character string indicating which correlation coefficient is to be used for the test. One of `"pearson"`, `"kendall"`, or `"spearman"`, can be abbreviated.
`exact` | a logical indicating whether an exact p-value should be computed.

### Details

If `method` is `"pearson"`, the test statistic is based on Pearson's product moment correlation coefficient `cor(x, y)` and follows a t distribution with `length(x)-2` degrees of freedom.

If `method` is `"kendall"` or `"spearman"`, Kendall's tau or Spearman's rho, respectively, are used to estimate the correlation. These tests should be used if the data do not necessarily come from a bivariate normal distribution.

For Kendall's test, by default (if `exact` is not specified), an exact p-value is computed if both samples contain less than 50 finite values and there are no ties. Otherwise, the standardized estimate is used as the test statistic, and is approximately normally distributed.

For Spearman's test, p-values are computed using algorithm AS 89.

### Value

A list with class `"htest"` containing the following components:

`statistic` | the value of the test statistic.
`parameter` | the degrees of freedom of the test statistic in the case that it follows a t distribution.
`p.value` | the p-value of the test.
`estimate` | the estimated correlation coefficient, with names attribute `"cor"`, `"tau"`, or `"rho"`, correspoding to the method employed.
`null.value` | the value of the correlation coefficient under the null hypothesis, hence `0`.
`alternative` | a character string describing the alternative hypothesis.
`method` | a character string indicating how the correlation was estimated.
`data.name` | a character string giving the names of the data.

### References

D. J. Best & D. E. Roberts (1975), Algorithm AS 89: The Upper Tail Probabilities of Spearman's rho. Applied Statistics, 24, 377–379.

Myles Hollander & Douglas A. Wolfe (1973), Nonparametric statistical inference. New York: John Wiley & Sons. Pages 185–194 (Kendall and Spearman tests).

### Examples

    ## Hollander & Wolfe (1973), p. 187f.
    ## Assessment of tuna quality.  We compare the Hunter L measure of
    ##  lightness to the averages of consumer panel scores (recoded as
    ##  integer values from 1 to 6 and averaged over 80 such values) in
    #   9 lots of canned tuna.
    ##  The null is that the Hunter L value is positively associated
    ##  with the panel score.
    x <- c(44.4, 45.9, 41.9, 53.3, 44.7, 44.1, 50.7, 45.2, 60.1)
    y <- c( 2.6,  3.1,  2.5,  5.0,  3.6,  4.0,  5.2,  2.8,  3.8)
    cor.test(x, y, method = "kendall", alternative = "greater")
    ## => p=0.05972
    ##
    cor.test(x, y, method = "kendall", alternative = "greater",
             exact = FALSE) # using large sample approximation
    ## => p=0.04765
    ## Compare this to
    cor.test(x, y, method = "spearm", alternative = "g")
    cor.test(x, y,                    alternative = "g")