如何在R中将矩阵的对应行值与单行矩阵相乘?
为了在R中将具有多行的矩阵的行值与单行矩阵相乘,我们可以按照以下步骤进行:
首先,创建一个具有多行的矩阵和一个单行矩阵。
然后,使用mapply函数将这些矩阵中的行值相乘。
示例
创建第一个矩阵
让我们创建一个如下所示的矩阵:
M1<-matrix(rpois(100,10),ncol=4) M1
输出
执行上述脚本后,将生成以下输出(由于随机化,此输出会在您的系统上有所不同):
[,1] [,2] [,3] [,4] [1,] 6 6 6 10 [2,] 12 8 6 13 [3,] 14 9 6 5 [4,] 10 8 15 7 [5,] 6 4 10 11 [6,] 9 11 10 10 [7,] 5 11 10 8 [8,] 11 14 9 13 [9,] 12 6 6 7 [10,] 6 10 12 11 [11,] 7 9 12 10 [12,] 16 13 11 11 [13,] 12 11 7 14 [14,] 14 11 8 9 [15,] 11 9 7 8 [16,] 9 12 17 7 [17,] 14 13 14 8 [18,] 9 15 11 9 [19,] 6 9 7 9 [20,] 17 8 11 7 [21,] 14 8 9 14 [22,] 9 15 11 10 [23,] 6 12 10 7 [24,] 11 9 12 15 [25,] 16 11 5 11
创建第二个矩阵
让我们创建一个如下所示的矩阵:
M2<-matrix(c(1,0,2,5),nrow=1) M2
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
输出
执行上述脚本后,将生成以下输出(由于随机化,此输出会在您的系统上有所不同):
[,1] [,2] [,3] [,4] [1,] 1 0 2 5
将两个矩阵的值相乘
使用mapply函数将具有多行矩阵M1的行值与单行矩阵M2相乘:
M1<-matrix(rpois(100,10),ncol=4) M2<-matrix(c(1,0,2,5),nrow=1) mapply(`*`,M1,M2)
输出
[1] 11 0 36 55 9 0 14 35 10 0 24 40 14 0 10 55 11 0 26 40 8 0 20 45 12 [26] 0 22 60 9 0 18 75 10 0 16 70 9 0 16 50 11 0 30 80 16 0 4 70 11 0 [51] 22 60 10 0 8 35 10 0 28 40 8 0 18 75 8 0 26 40 9 0 24 20 14 0 10 [76] 30 6 0 24 75 8 0 18 60 12 0 20 60 5 0 24 40 16 0 24 35 16 0 24 45
广告