3

我正在使用 R 并且对相关性有疑问。

A<-data.frame(A1=c(1,2,3,4,5),B1=c(6,7,8,9,10),C1=c(11,12,13,14,15 ))
B<-data.frame(A2=c(6,7,7,10,11),B2=c(2,1,3,8,11),C2=c(1,5,16,7,8))
cor(A,B)
#           A2        B2       C2
# A1 0.9481224 0.9190183 0.459588
# B1 0.9481224 0.9190183 0.459588
# C1 0.9481224 0.9190183 0.459588

我想获得矩阵中每个相关系数的 p 值。这可能吗?

我尝试使用rcorrHmisc 包中的函数,但只获得一个 p 值,而不是每个相关性。

A <- as.vector(t(A))
B <- as.vector(t(B))
rcorr(A, B)
     x    y
x 1.00 0.13
y 0.13 1.00

n= 15 


P
  x      y     
x        0.6425
y 0.6425       

同样,我也尝试在 R 中使用“psych”包来做到这一点,但无法做到。

4

1 回答 1

3

您可以rcorr直接申请AB如果您先将它们转换为矩阵:

library(Hmisc)
rcorr(as.matrix(A),as.matrix(B))

这使 :

     A1   B1   C1   A2   B2   C2
A1 1.00 1.00 1.00 0.95 0.92 0.46
B1 1.00 1.00 1.00 0.95 0.92 0.46
C1 1.00 1.00 1.00 0.95 0.92 0.46
A2 0.95 0.95 0.95 1.00 0.97 0.16
B2 0.92 0.92 0.92 0.97 1.00 0.15
C2 0.46 0.46 0.46 0.16 0.15 1.00

n= 5 


P
   A1     B1     C1     A2     B2     C2    
A1        0.0000 0.0000 0.0141 0.0273 0.4361
B1 0.0000        0.0000 0.0141 0.0273 0.4361
C1 0.0000 0.0000        0.0141 0.0273 0.4361
A2 0.0141 0.0141 0.0141        0.0078 0.7981
B2 0.0273 0.0273 0.0273 0.0078        0.8125
C2 0.4361 0.4361 0.4361 0.7981 0.8125       
于 2013-09-24T09:41:28.423 回答