如何找到R中两个矩阵的对应列之间的相关性?

为了找到两个矩阵的对应列之间的相关性,我们可以使用mapply函数,但是我们将不得不使用as.data.frame函数读取矩阵。例如,如果我们有两个名为M_1和M_2的矩阵,并且每个矩阵包含5列,则可以通过使用mapply(cor,as.data.frame(M_1),as .data.frame(M_2))

示例

考虑以下矩阵-

M1<-matrix(1:40,ncol=2)
M1
输出结果
    [,1] [,2]
[1,]  1   21
[2,]  2   22
[3,]  3   23
[4,]  4   24
[5,]  5   25
[6,]  6   26
[7,]  7   27
[8,]  8   28
[9,]  9   29
[10,] 10  30
[11,] 11  31
[12,] 12  32
[13,] 13  33
[14,] 14  34
[15,] 15  35
[16,] 16  36
[17,] 17  37
[18,] 18  38
[19,] 19  39
[20,] 20  40

示例

M2<-matrix(1:40,ncol=2)
M2
输出结果
    [,1] [,2]
[1,]  1   21
[2,]  2   22
[3,]  3   23
[4,]  4   24
[5,]  5   25
[6,]  6   26
[7,]  7   27
[8,]  8   28
[9,]  9   29
[10,] 10  30
[11,] 11  31
[12,] 12  32
[13,] 13  33
[14,] 14  34
[15,] 15  35
[16,] 16  36
[17,] 17  37
[18,] 18  38
[19,] 19  39
[20,] 20  40

找到两个列的M1的列1和M2的列1之间的相关性-

示例

mapply(cor,as.data.frame(M1),as.data.frame(M2))
输出结果
V1 V2
1 1

示例

M3<-matrix(rpois(40,5),ncol=2)
M3
输出结果
    [,1] [,2]
[1,]  3    6
[2,]  4    6
[3,]  9    3
[4,]  1    7
[5,]  6    5
[6,]  4    2
[7,]  1    3
[8,]  1    3 
[9,]  5    2
[10,] 4    1
[11,] 3    5
[12,] 6    8
[13,] 3    4
[14,] 6    6
[15,] 3    5
[16,] 3    6
[17,] 4    5
[18,] 4    5
[19,] 5    4
[20,] 3    7

示例

M4<-matrix(rpois(40,5),ncol=2)
M4
输出结果
     [,1] [,2]
[1,]  3   4
[2,]  7   5
[3,]  6   5
[4,]  8   4
[5,]  7   5
[6,]  6   4
[7,]  8   0
[8,]  3   5
[9,]  2   7
[10,] 6   6
[11,] 4   4
[12,] 6   5
[13,] 8   4
[14,] 5   8
[15,] 4   2
[16,] 7   2
[17,] 6   4
[18,] 3   2
[19,] 4   5
[20,] 4   7

找到两列的M3的第1列和M4的第1列之间的相关性-

示例

mapply(cor,as.data.frame(M3),as.data.frame(M4))
输出结果
V1 V2
-0.06220599 0.01182284