如何在 R 中找到两个矩阵的点积?
要查找 R 中两个矩阵的点积,我们可以使用 geometry 包的 dot 函数。
例如,如果我们有两个矩阵,例如 matrix1 和 matrix2,那么我们可以使用以下给出的命令来使用这两个矩阵的点积:
dot(matrix1,matrix2)
示例 1
以下代码片段创建了一个示例矩阵:
M1<-matrix(rpois(25,5),ncol=5) M1
创建了以下矩阵:
[,1] [,2] [,3] [,4] [,5] [1,] 7 3 5 7 9 [2,] 3 6 6 6 6 [3,] 4 7 6 2 9 [4,] 5 6 4 6 2 [5,] 8 5 5 4 8
以下代码片段创建了一个示例矩阵:
M2<-matrix(rpois(25,5),ncol=5) M2
创建了以下矩阵:
[,1] [,2] [,3] [,4] [,5] [1,] 7 4 6 3 7 [2,] 6 1 5 2 5 [3,] 3 7 3 6 3 [4,] 6 5 5 4 3 [5,] 3 7 3 5 6
要加载 geometry 包并在上面创建的矩阵上查找矩阵 M1 和 M2 的点积,请将以下代码添加到上面的代码片段中:
M1<-matrix(rpois(25,5),ncol=5) M2<-matrix(rpois(25,5),ncol=5) library(geometry) dot(M1,M2)
输出
如果您将上面给出的所有代码片段作为一个程序执行,它将生成以下输出:
[1] 133 132 113 89 174
示例 2
以下代码片段创建了一个示例矩阵:
M3<-matrix(rpois(80,5),ncol=4) M3
创建了以下矩阵:
[,1] [,2] [,3] [,4] [1,] 5 7 1 4 [2,] 4 5 7 5 [3,] 6 3 5 3 [4,] 7 5 13 5 [5,] 10 5 5 7 [6,] 4 2 3 5 [7,] 7 5 2 2 [8,] 6 8 3 3 [9,] 3 6 4 4 [10,] 3 6 5 2 [11,] 6 3 3 3 [12,] 4 1 5 2 [13,] 3 8 4 9 [14,] 10 7 4 8 [15,] 5 4 5 2 [16,] 4 7 8 7 [17,] 5 9 5 4 [18,] 7 4 4 4 [19,] 4 4 3 6 [20,] 5 8 5 6
以下代码片段创建了一个示例矩阵:
M4<-matrix(rpois(80,2),ncol=4) M4
创建了以下矩阵:
[,1] [,2] [,3] [,4] [1,] 2 1 2 3 [2,] 1 2 0 3 [3,] 2 3 5 1 [4,] 2 0 3 2 [5,] 1 2 0 0 [6,] 0 1 2 2 [7,] 1 3 3 2 [8,] 1 2 1 2 [9,] 1 1 2 2 [10,] 3 2 1 3 [11,] 1 2 2 5 [12,] 2 2 1 3 [13,] 1 0 4 2 [14,] 1 2 0 2 [15,] 2 2 0 2 [16,] 3 4 1 2 [17,] 1 1 3 3 [18,] 1 0 3 4 [19,] 0 0 1 3 [20,] 1 2 0 3
要在上面创建的矩阵上查找矩阵 M3 和 M4 的点积,请将以下代码添加到上面的代码片段中:
M3<-matrix(rpois(80,5),ncol=4) M4<-matrix(rpois(80,2),ncol=4) dot(M3,M4)
输出
如果您将上面给出的所有代码片段作为一个程序执行,它将生成以下输出:
[1] 141 170 159 211
示例 3
以下代码片段创建了一个示例矩阵:
M5<-matrix(round(rnorm(60),1),ncol=3) M5
创建了以下矩阵:
[,1] [,2] [,3] [1,] 0.0 -0.4 -0.6 [2,] 0.2 1.5 -0.2 [3,] 0.3 0.2 0.7 [4,] -0.8 0.1 -1.2 [5,] 0.9 1.1 1.2 [6,] -0.1 -0.2 -0.9 [7,] 1.1 -1.4 -0.2 [8,] 0.5 -0.9 -0.3 [9,] 0.1 -2.6 0.2 [10,] -0.4 0.9 1.2 [11,] 0.6 0.4 0.7 [12,] 3.1 -3.3 0.0 [13,] 0.2 -0.4 2.5 [14,] 1.7 1.0 -0.9 [15,] 0.0 0.8 -0.2 [16,] -0.1 0.9 -0.2 [17,] 0.6 0.5 -2.3 [18,] 0.1 0.4 -1.7 [19,] -0.1 0.4 -1.3 [20,] 0.9 0.6 0.4
以下代码片段创建了一个示例矩阵:
M6<-matrix(round(rnorm(60),1),ncol=3) M6
创建了以下矩阵:
[,1] [,2] [,3] [1,] 1.5 -1.1 -2.4 [2,] 1.9 0.0 -0.1 [3,] -1.5 -0.5 -1.0 [4,] 1.2 0.9 -0.1 [5,] 0.3 0.5 0.3 [6,] 1.1 -0.1 0.5 [7,] 0.1 1.2 1.6 [8,] 0.1 1.0 -0.8 [9,] -0.4 -1.6 -0.8 [10,] -0.2 -0.6 0.4 [11,] 2.3 -3.6 0.7 [12,] -2.1 1.5 0.2 [13,] -0.4 -1.9 -1.0 [14,] -0.8 -0.5 0.1 [15,] 0.4 0.4 0.9 [16,] -0.3 1.2 0.7 [17,] 0.4 -1.8 -0.1 [18,] -0.8 0.2 -0.2 [19,] -0.1 2.1 -2.8 [20,] -0.7 -0.6 1.3
要在上面创建的矩阵上查找矩阵 M5 和 M6 的点积,请将以下代码添加到上面的代码片段中:
M5<-matrix(round(rnorm(60),1),ncol=3) M6<-matrix(round(rnorm(60),1),ncol=3) dot(M5,M6)
输出
如果您将上面给出的所有代码片段作为一个程序执行,它将生成以下输出:
[1] -7.67 -3.03 3.34
广告