假设我有两个维度相同的向量:
我该如何从中计算出一个矩阵,其中包含所有的乘积(类似于数据库中的笛卡尔积):
scala> val v = DenseVector(3.0, 4.0)
v: breeze.linalg.DenseVector[Double] = DenseVector(3.0, 4.0)
scala> val w = DenseVector(5.0, 6.0)
w: breeze.linalg.DenseVector[Double] = DenseVector(5.0, 6.0)
我该如何从中计算出一个矩阵,其中包含所有的乘积(类似于数据库中的笛卡尔积):
scala> val x = DenseMatrix(
| (v(0) * w(0), v(0) * w(1)),
| (v(1) * w(0), v(1) * w(1))
| )
x: breeze.linalg.DenseMatrix[Double] =
15.0 18.0
20.0 24.0
我感觉你可以通过广播来完成它,但是我不知道具体怎么做。 谢谢。