小编use*_*267的帖子

从 R 中的数据帧创建相关矩阵

我有一个相关性数据框,看起来像这样(尽管我的真实数据中有大约 15,000 行)

phen1<-c("A","B","C")
phen2<-c("B","C","A")
cors<-c(0.3,0.7,0.8)

data<-as.data.frame(cbind(phen1, phen2, cors))

    phen1  phen2   cors
1     A      B      0.3
2     B      C      0.7
3     C      A      0.8

Run Code Online (Sandbox Code Playgroud)

这是在外部创建并读入 R 中,我想将此数据框转换为相关矩阵,其中 phen1 和 2 作为该矩阵的行和列的标签。我只为下三角形或上三角形计算过这个,我没有对角线的 1。所以我希望最终结果是一个完整的相关矩阵,但第一步可能是创建下/上三角形,然后转换为我认为的完整矩阵。我不确定如何做这一步。

此外,结果可能不是直观的顺序,但我不确定这是否重要,但理想情况下我想要一种方法来做到这一点,它使用 phen1 和 phen 2 中的标签来确保矩阵具有正确的值在正确的地方,如果这有意义吗?

基本上为此,我想要这样的结果作为最终结果:

  A    B    C
A 1    0.3  0.8
B 0.3  1    0.7
C 0.8  0.7  1
Run Code Online (Sandbox Code Playgroud)

r matrix correlation

6
推荐指数
1
解决办法
568
查看次数

标签 统计

correlation ×1

matrix ×1

r ×1