在R中,一个数据框架的一列与另一个数据框架的所有列之间的相关性如何?



我试图通过运行NMF与临床元数据来确定元基因之间的相关性。因此,我有两个数据帧要处理。第一个是每个患者的h矩阵,表达Metagene。另一个数据帧是元数据。我想用元数据框架在n个Metagenes之间运行单独的关联。

n个meta基因的矩阵

Metagene 1     Metagene 2    Metagene N
P1   0.434          0.454
P2   0.322          0.343
P3   0.343          0.323

我想运行上面这个矩阵的一列与元数据矩阵(大约30+列)的相关性。

Age    BMI    etc
P1    43.4   45.4
P2    32.2   34.3
P3    34.3   32.3

从我自己的尝试和我的研究,我只能关联两个完整的数据框架,而不是一个特定的列与另一个完整的数据框架。任何建议将感激这个新手谢谢!

我将简单地将两个矩阵cbind,在得到的矩阵和相关列和行子集上运行cor:

你没有为你的数据提供一个代表,因此我想出了一个示例集来说明这个想法:

## Sample Data
set.seed(123)
mg <- matrix(rnorm(1000), ncol = 10)
colnames(mg) <- paste0("Metagene_", 1:10)
md <- matrix(rnorm(400), ncol = 4)
colnames(md) <- c("Age", "BMI", "Weight", "Height")
## Calculate all correlations
all_cors <- cor(cbind(mg, md))
## Extract the relevant rows and columns
all_cors[which(rownames(all_cors) %in% colnames(md)), 
which(colnames(all_cors) %in% colnames(mg)), 
drop = FALSE]
#         Metagene_1    Metagene_2  Metagene_3  Metagene_4 Metagene_5  Metagene_6
# Age     0.07578378 -0.0237288723 -0.16055711  0.19574314 0.03423165 -0.04127698
# BMI    -0.12758456  0.0126769273  0.08534472  0.01303423 0.14617045  0.03426132
# Weight -0.04952921  0.0008581215  0.13484638 -0.01789764 0.07973140  0.09242346
# Height  0.13040172 -0.0973757690 -0.02717946  0.09158976 0.10353301 -0.02002915
#         Metagene_7  Metagene_8  Metagene_9 Metagene_10
# Age     0.08490306  0.14588393 -0.08666105   0.1722885
# BMI     0.17938487 -0.04331769 -0.01524405  -0.1039355
# Weight  0.02342581  0.16759941  0.16386263  -0.0433296
# Height  0.05756989  0.04728934 -0.06805982   0.1269274

相关内容

  • 没有找到相关文章

最新更新