如何在 R 数据框中找到带有 p 值的相关矩阵?
可以通过使用 Hmisc 包的 rcorr 函数并将其输出读取为矩阵来找到 R 数据框的相关矩阵及其 p 值。例如,如果我们有一个名为 df 的数据框,则可以通过使用 rcorr(as.matrix(df)) 来找到带有 p 值的相关矩阵。
示例
考虑以下数据框 -
df1<-data.frame(x1=rnorm(20),x2=rnorm(20),x3=rnorm(20,5,1.01)) df1
输出
x1 x2 x3 1 -0.73652050 -0.63217859 5.185969 2 -2.01419490 0.34607185 4.481368 3 0.34235643 0.57178015 3.026729 4 -0.08378474 0.92191817 4.250791 5 0.83898327 0.07942875 3.211523 6 -0.02279024 0.63411399 5.194953 7 1.41945942 1.11677804 4.615502 8 -0.02649611 -0.12183326 5.823864 9 1.51668723 -0.05485461 4.569037 10 -1.26449629 -1.02647482 4.592757 11 -0.12044314 -0.44292038 6.876043 12 -0.45473954 -1.05514259 7.532017 13 -1.11612369 -1.15571563 5.815840 14 -0.60718723 0.67048948 5.429381 15 -0.36208570 1.16795697 5.338567 16 -0.07388237 0.66417818 3.412541 17 -0.76607395 0.38185805 5.127318 18 1.21366135 -1.58142860 6.173194 19 1.01896222 1.97880129 5.418979 20 -1.23818051 -0.99555593 6.024320
加载 Hmisc 包并为 df1 中的数据创建带有 p 值的相关矩阵 -
示例
library(Hmisc) rcorr(as.matrix(df1),type="pearson")
输出
x1 x2 x3 x1 1.00 0.29 -0.18 x2 0.29 1.00 -0.45 x3 -0.18 -0.45 1.00 n= 20 P x1 x2 x3 x1 0.2222 0.4548 x2 0.2222 0.0470 x3 0.4548 0.0470
示例
df2<-data.frame(y1=rpois(20,5),y2=rpois(20,8),y3=rpois(20,2),y4=rpois(20,5)) df2
输出
y1 y2 y3 y4 1 4 14 2 8 2 5 15 1 6 3 7 9 2 3 4 5 13 1 5 5 5 4 1 2 6 5 8 1 4 7 3 7 0 3 8 7 13 3 2 9 9 12 7 7 10 5 11 3 3 11 4 8 2 1 12 1 6 2 1 13 9 5 3 5 14 4 6 3 2 15 5 5 0 1 16 6 9 1 7 17 3 2 3 9 18 4 9 4 4 19 5 11 5 9 20 6 9 2 8
为 df2 中的数据创建带有 p 值的相关矩阵 -
示例
rcorr(as.matrix(df2),type="pearson")
输出
y1 y2 y3 y4 y1 1.00 0.26 0.38 0.21 y2 0.26 1.00 0.19 0.27 y3 0.38 0.19 1.00 0.36 y4 0.21 0.27 0.36 1.00 n= 20 P y1 y2 y3 y4 y1 0.2712 0.0980 0.3737 y2 0.2712 0.4101 0.2490 y3 0.0980 0.4101 0.1152 y4 0.3737 0.2490 0.1152
广告