【发布时间】:2018-08-05 19:53:52
【问题描述】:
我们有两个矩阵,例如:
A=
[,1] [,2] [,3]
[1,] -2 1 0
[2,] 1 0 -1
[3,] 0 -1 4
和
B=
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 1 2 3
[3,] 3 1 2
[4,] 2 3 1
[5,] 3 1 2
我会计算 A 行和 B 行之间的距离矩阵。换句话说,使用我们的示例:
[,1] [,2] [,3]
[1,] dist(B[1,]-A[1,]) dist(B[1,]-A[2,]) dist(B[1,]-A[3,])
[2,] dist(B[2,]-A[1,]) dist(B[2,]-A[2,]) dist(B[2,]-A[3,])
[3,] dist(B[3,]-A[1,]) dist(B[3,]-A[2,]) dist(B[3,]-A[3,])
[4,] dist(B[4,]-A[1,]) dist(B[4,]-A[2,]) dist(B[4,]-A[3,])
[5,] dist(B[5,]-A[1,]) dist(B[5,]-A[2,]) dist(B[5,]-A[3,])
我正在考虑使用函数“dist”,它计算并返回数据矩阵行之间距离的距离矩阵。但它仅适用于单个矩阵。我尝试使用命令“rbind(A,B)”并将“dist”应用于生成的矩阵,但在这种情况下,我还获得了同一矩阵的行之间的距离。
【问题讨论】:
-
这些矩阵有多大?使用您的解决方案并将结果子集化为感兴趣的距离可能是最有效的。
-
几千行。但我无法对结果进行子集化。