menemukan nilai-p dalam korelasi pearson di R

26

Apakah mungkin untuk menemukan nilai-p dalam korelasi pearson dalam R?

Untuk menemukan korelasi pearson, saya biasanya melakukan ini

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

Tetapi bagaimana saya bisa menemukan nilai p ini?

gendut
sumber
1
Bantuan pada cor( ?cor) secara eksplisit menyebutkan cor.test(di bawah "Lihat Juga")
Glen_b -Reinstate Monica

Jawaban:

32

Anda bisa menggunakan cor.test:

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

pemberian yang mana :

# 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    

Informasi lebih lanjut tentang statistik dan parameter tambahan di halaman resmi:

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

brumar
sumber
terima kasih, tidak cukup poin untuk dibatalkan, gunakan itu
tubby
9

Jika Anda hanya menginginkan nilai P:

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

Berikut ini akan dilakukan seperti yang Anda minta:

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

Di sini x adalah bingkai data, dan rcorr mengembalikan setiap korelasi yang dimungkinkan untuk dibentuk dari kerangka data "x".

Atau Anda bisa menghitung sendiri statistik:

t=ρ^1ρ^2n2

ρ^

Repmat
sumber
Terima kasih, tapi apa itu x? Saya pikir ini adalah gabungan dari col1 dan col2 karena kita memerlukan dua vektor untuk menghitung korelasi pearson. Tetapi bisakah Anda memberi tahu saya apa itu x?
Gendut
Ini adalah bingkai data, lihat pembaruan saya.
Repmat