R'de pearson korelasyonunda p-değeri bulma


26

P-değerini R'de pearson korelasyonunda bulmak mümkün müdür?

Pearson korelasyonunu bulmak için, genellikle bunu yaparım.

col1 = c(1,2,3,4)
col2 = c(1,4,3,5)
cor(col1,col2)
# [1] 0.8315218

Fakat bunun p değerini nasıl bulabilirim?


1
cor( ?cor) Yardımını açıkça belirtiyor cor.test("Ayrıca Bkz."
— Altında

Yanıtlar:


32

kullanabilirsiniz cor.test:

col1 = c(1,2,3,4) 
col2 = c(1,4,3,5)
cor.test(col1,col2) 

hangi verir:

# Pearson's product-moment correlation   
# data:  col1 and col2   
# t = 2.117, df = 2, p-value = 0.1685   
# alternative hypothesis: true correlation is not equal to 0   
# 95 percent confidence interval:   
#  -0.6451325  0.9963561   
# sample estimates:   
#       cor    
# 0.8315218    

Resmi sayfada istatistikler ve ekstra parametreler hakkında daha fazla bilgi:

https://stat.ethz.ch/R-manual/R-patched/library/stats/html/cor.test.html


teşekkürler, oy vermek için yeterli puan yok, yine de kullandı
— tubby

9

Yalnızca P değerini istiyorsanız:

> cor.test(col1,col2)$p.value
[1] 0.1684782

7

İstediğiniz gibi aşağıdakiler olacaktır:

 library(Hmisc) # You need to download it first.
 rcorr(x, type="pearson") # type can be pearson or spearman

Burada x bir veri çerçevesidir ve rcorr "x" veri çerçevesinden oluşturulabildiği her korelasyonu döndürür.

Veya istatistiği kendiniz hesaplayabilirsiniz:

t=ρ^1−ρ^2n−2

Burada verilerden tahmin edilen pearson korelasyonu, n ise örneklem büyüklüğüdür.ρ^


Teşekkürler, ama x nedir? Bence bu col1 ve col2'nin birleştirilmesi, çünkü pearson korelasyonunu hesaplamak için iki vektöre ihtiyacımız var. Ama bana x'in ne olduğunu söyleyebilir misin?
— tubby

Bu bir veri çerçevesi, güncellememe bakın.
— Repmat
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.