Учитывая некоторый вектор чисел, я хочу применить другую функцию к вектору и получить матрицу результатов. Есть ли идиоматический c способ сделать это на ветер?
import breeze.linalg._
val dv = DenseMatrix(0.0, 5.0, 6.0, 3.0, 7.0)
val someOpDef = Seq(2.0, 3.0)
val resultButWrongFormat = for (i <- someOpDef) yield dv - i
resultButWrongFormat.reduce(DenseMatrix.horzcat(_, _))
Это создает DenseMatrix, но он выглядит неуклюжим против синтаксиса Matlab.
import breeze.linalg._
dv: breeze.linalg.DenseMatrix[Double] =
0.0 5.0 6.0 3.0 7.0
someOpDef: Seq[Double] = List(2.0, 3.0)
res0: breeze.linalg.DenseMatrix[Double] =
-2.0 -3.0
3.0 2.0
4.0 3.0
1.0 0.0
5.0 4.0