統(tǒng)計術(shù)語中,相關(guān)系數(shù)一詞經(jīng)常被濫用捆愁,同時也困擾著我割去。相關(guān)系數(shù)描述一個變量隨著另一個變量的增加而增加,也可以理解為單調(diào)遞增昼丑。變量之間的這個單調(diào)趨勢很值得去探索呻逆,但是大多數(shù)人習慣使用標準相關(guān)系數(shù)導致無法發(fā)現(xiàn)這一趨勢。在我的印象中菩帝,老師在課堂上經(jīng)常強調(diào):我們現(xiàn)在所說的咖城、以及以后所說的相關(guān)都指線性相關(guān)。所以呼奢,每當我們一提到相關(guān)性或者探尋變量間的相關(guān)性時宜雀,腦海里便跳出了線性相關(guān)。把變量間的相關(guān)性限制成了線性相關(guān)握础。
Pearson相關(guān)系數(shù)辐董,通常是學生們學到的計算相關(guān)系數(shù)的唯一,此方法傾向于研究線性趨勢禀综。只有Spearman相關(guān)系數(shù)简烘,實際上用于檢測一般單調(diào)趨勢,而這種方法通常在課堂上老師沒有講解定枷。
我們可以借助R軟件孤澎,模擬隨著x的多項式次數(shù)的增加,Pearson和Spearman相關(guān)系數(shù)的變化規(guī)律依鸥。代碼如下:
corTest <- function(degree, method){
x <- 1:50
y <- x ** degree
corr <- cor(x, y, method=method)
return(corr)
}
degree <- 1:50
pearson <- sapply(degree, corTest, method='pearson')
spearman <- sapply(degree, corTest, method='spearman')
types <- rep(c('pearson', 'spearman'), each = 50)
data <- data.frame(degree, types, corr=c(pearson, spearman))
colors=c(rgb(0.7,0.3,0.1,0.5) , rgb(0.2,0.2,0.9,0.5))
library(lattice)
xyplot(corr ~ degree, data, groups = types, type = "a",
auto.key=list(corner=c(0.1,0.9), points=FALSE, lines=FALSE, col=colors, cex=1.3),
lwd=5, col=colors,
xlab="Degree of Polynomial",
ylab="Correlation Coefficient",
main="Pearson vs. Spearman Correlaton")
從下圖中我們可以看出:如果Pearson相關(guān)系數(shù)確實檢測到了單調(diào)趨勢亥至,那么隨著x多項式次數(shù)的增加,Pearson相關(guān)系數(shù)會向0靠攏贱迟,但不會為0姐扮。此時,使用Spearman相關(guān)系數(shù)會更加精確衣吠。