我可以制作一个带有双循环的卡特尔产品的交叉产品:
for(i<-Array(...);j<-Array(...)) yield(ij)
但是通过这种程序,我获得了双倍的感觉。 &安培; &#34;ジ&#34 ;. 我如何在scala中避免这种行为? 我希望R中的crossprod函数具有与两个矩阵相同的行为。
> m1
[,1] [,2]
[1,] 1 3
[2,] 2 4
> m2
[,1] [,2]
[1,] 5 7
[2,] 6 8
> crossprod(m1,m2)
[,1] [,2]
[1,] 17 23
[2,] 39 53
我想从scala中的2 Array [Array [Double]]获得相同的结果,但我想我不能在开始时使用double for循环,因为我们从它获得了双倍。
例子使用大小为2的平方矩阵,但我将应用于n * m矩阵。