Alt çizgi
Gerçek (Pearson) korelasyon katsayısının sıfır olduğu hipotezini reddetmek için gereken örnek korelasyon katsayısı, örneklem büyüklüğü arttıkça oldukça hızlı bir şekilde küçülür. Yani, genel olarak hayır, aynı anda büyük (büyüklükte) bir korelasyon katsayısına ve aynı anda büyük bir değerine sahip olamazsınızp .
Üst Çizgi (Ayrıntılar)
fonksiyonunda Pearson korelasyon katsayısı için kullanılan test, aşağıda tartıştığım yöntemin çok az değiştirilmiş bir versiyonudur.R,cor.test
Varsayalım bağıntı ile istatistiksel bağımsız iki değişkenli normal rasgele vektörlerdir p'ye . O Biz Sıfır hipotezini test etmek istiyorum ρ = 0 versus ρ ≠ 0 . Örnek korelasyon katsayısı r olsun . Standart doğrusal regresyon teorisi kullanılarak, test istatistiğinin, T = r √ olduğunu göstermek zor değildir.
( X1, Y1) , ( X2, Y2) , … , ( Xn, Yn)ρρ = 0ρ ≠ 0r
bir yer alırtn-2geçersiz hipoteze göre dağılımı. Büyükn için,tn-2dağılımı standart normale yaklaşır. Dolayısıyla,T2, yaklaşık bir derece serbestlik ile dağıtılmış yaklaşık olarak ki-karedir. (Yaptığımız varsayımlar altında,gerçeklikteT2∼F1,n-2, ancakχ21yaklaşımı olan biteni daha açık bir hale getiriyor, sanırım.)
T= R , n - 2-----√( 1 - r2)------√
tn - 2ntn - 2T2T2∼F1,n−2χ21
Yani,
Burada q, 1 - α olduğu ( 1 - α ) miktarsal bir serbestlik derecesine sahip olan bir ki-kare dağılım.
P(r21−r2(n−2)≥q1−α)≈α,
q1−α(1−α)
Şimdi, not bu olarak artmaktadır r 2 artar. Olasılık beyanındaki miktarı yeniden düzenleyerek, hepsine sahibiz
| r | ≥ 1r2/(1−r2)r2
seviyesindeki boş hipotezireddederiz. Açıkça sağ tarafnile azalır.
| r |≥11 + ( n - 2 )/q1−α−−−−−−−------√
αn
Bir entrika
İşte red bölgesi örneklem büyüklüğünün bir fonksiyonu olarak. Bu nedenle, örneğin, örneklem büyüklüğü 100'ü aştığında, (mutlak) korelasyonun, boş değeri α = 0,05 düzeyinde reddetmek için sadece yaklaşık 0.2 olması gerekir .| r |α = 0,05

Bir simülasyon
Kesin bir korelasyon katsayısına sahip bir çift sıfır ortalama vektör çifti üretmek için basit bir simülasyon yapabiliriz . Kod aşağıda. Bundan çıktısına bakabiliriz cor.test
.
k <- 100
n <- 4*k
# Correlation that gives an approximate p-value of 0.05
# Change 0.05 to some other desired p-value to get a different curve
pval <- 0.05
qval <- qchisq(pval,1,lower.tail=F)
rho <- 1/sqrt(1+(n-2)/qval)
# Zero-mean orthogonal basis vectors
b1 <- rep(c(1,-1),n/2)
b2 <- rep(c(1,1,-1,-1),n/4)
# Construct x and y vectors with mean zero and an empirical
# correlation of *exactly* rho
x <- b1
y <- rho * b1 + sqrt(1-rho^2) * b2
# Do test
ctst <- cor.test(x,y)
Yorumlarda istendiği gibi, yukarıdaki kodu izleyen derhal çalıştırılabilen arsa reprodüksiyonu için kod buradadır (ve burada tanımlanan değişkenlerin bazılarını kullanır).
png("cortest.png", height=600, width=600)
m <- 3:1000
yy <- 1/sqrt(1+(m-2)/qval)
plot(m, yy, type="l", lwd=3, ylim=c(0,1),
xlab="sample size", ylab="correlation")
polygon( c(m[1],m,rev(m)[1]), c(1,yy,1), col="lightblue2", border=NA)
lines(m,yy,lwd=2)
text(500, 0.5, "p < 0.05", cex=1.5 )
dev.off()