You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在R语言中计算连续向量矩阵与二元向量矩阵的相关性

计算mat1列与mat2列的相关性

你可以直接使用R中的cor()函数来计算两个矩阵列之间的相关性,该函数默认计算Pearson相关系数,也支持Spearman等其他方法。

步骤1:确认矩阵构造正确

首先运行你提供的代码构造两个矩阵:

# 构造mat1
mat1.data <- c(-0.12, -0.09, -0.01, -0.2,  0.3,  0.1, 
               0.2, -0.5, -0.1,  0.7, -0.04, 0.02, -0.08,
               -0.2, -0.7, -0.26, -0.09, -0.04, 0.05,  0.01,
               -0.26, -0.36, -0.26, -0.05, -0.03, 0.02, -0.01,
               0.01, 0.01, -0.05)
mat1 <- matrix(mat1.data,nrow=6,ncol=5,byrow=TRUE)
rownames(mat1) <- paste0("cell", seq(1,6,1))
colnames(mat1) <- paste0("col", seq(1,5,1))

# 构造mat2
mat2.data <- c(0,1,0,0,0,
               1,0,0,0,0,
               0,0,1,0,0,
               0,0,0,1,0,
               1,0,0,0,0,
               0,0,0,0,1)
mat2 <- matrix(mat2.data,nrow=6,ncol=5,byrow=TRUE)
rownames(mat2) <- paste0("cell", seq(1,6,1))
colnames(mat2) <- paste0("var", seq(1,5,1))

步骤2:计算列间相关性

使用cor()函数直接计算:

# 计算Pearson相关系数(默认)
cor_matrix <- cor(mat1, mat2)

# 查看结果
print(cor_matrix)

结果说明

返回的cor_matrix是一个5×5的矩阵:

  • 行对应mat1的列(col1到col5)
  • 列对应mat2的列(var1到var5)
  • 每个元素代表对应列之间的相关系数

其他相关性方法

如果需要计算Spearman秩相关系数,只需添加method参数:

# 计算Spearman相关系数
cor_matrix_spearman <- cor(mat1, mat2, method = "spearman")

内容的提问来源于stack exchange,提问作者Yulia Kentieva

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 21:10:09