如何在R矩阵中减去另一列?

要在R矩阵中减去另一列,我们首先需要使用as.data.frame将矩阵读取为数据帧,然后使用减号找到减去列并访问数据帧的列。要了解如何完成此操作,请查看以下示例中的步骤。

示例

考虑以下数据帧-

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

示例

读取矩阵M1作为数据帧-

M1<-as.data.frame(M1)
M1
输出结果
    V1  V2
1  10   5
2  10  16
3   7   7
4  10   5
5   9   9
6   9   5
7   8  11
8   8   3
9  10  11
10  8   8
11  5  11
12  8   6
13  7   9
14  8   6
15 10  10
16  5  10
17  6   9
18  8   8
19  7  13
20  6   8

示例

找出M1的V1和V2列中的差异-

M1$Difference<-(M1$V1-M1$V2)
M1
输出结果
    V1  V2 Difference
1  10   5    5
2  10  16   -6
3   7   7    0
4  10   5    5
5   9   9    0
6   9   5    4
7   8  11   -3
8   8   3    5
9  10  11   -1
10  8   8    0
11  5  11   -6
12  8   6    2
13  7   9   -2
14  8   6    2
15 10  10    0
16  5  10   -5
17  6   9   -3
18  8   8    0
19  7  13   -6
20  6   8   -2

示例

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

示例

找到M2的V1和V2列中的差异-

M2<-as.data.frame(M2)
M2
输出结果
   V1 V2
1  8  7
2  4  5
3  3  6
4  8  3
5  3  4
6  5  7
7  4  4
8  6  5
9  4  6
10 8  5
11 5  5
12 3  9
13 3  3
14 3  4
15 8  6
16 5  5
17 7  8
18 8  8
19 0  6
20 3  4

示例

找到M2的V1和V2列中的差异-

M2$Difference<-(M2$V1-M2$V2)
M2
输出结果
   V1 V2 Difference
1  8  7    1
2  4  5   -1
3  3  6   -3
4  8  3    5
5  3  4   -1
6  5  7   -2
7  4  4    0
8  6  5    1
9  4  6   -2
10 8  5    3
11 5  5    0
12 3  9   -6
13 3  3    0
14 3  4   -1
15 8  6    2
16 5  5    0
17 7  8   -1
18 8  8    0
19 0  6   -6
20 3  4   -1