1

我正在尝试向矩阵的每一行添加一个行向量:

val M = DenseMatrix((1.0,2.0,3.0),
                    (4.0,5.0,6.0))

val row = DenseVector(3.0,4.0,5.0).t

val result = M(*,::) + row
// error: could not find implicit value for parameter 
// op: OpAdd.Impl2[
//   BroadcastedRows[DenseMatrix[Double],DenseVector[Double]],
//   Transpose[DenseVector[Double]],
//   That
// ]

我可以改用列向量,但看起来有点复杂:

val result = (M.t(::,*) + row.t).t

// result: breeze.linalg.DenseMatrix[Double] =
// 4.0  6.0  8.0
// 7.0  9.0  11.0

谢谢。

4

0 回答 0