【发布时间】:2016-04-19 16:49:19
【问题描述】:
我的代码如下:
val bigArrs = Array(BigDecimal(1),BigDecimal(2))
val dm = new DenseMatrix[BigDecimal](2,1,bigArrs)
val cal = dm*dm.t
当我编译它时,我得到以下编译错误:
Error:(11, 15) diverging implicit expansion for type breeze.linalg.operators.OpMulMatrix.
Impl2[breeze.linalg.DenseMatrix[BigDecimal],breeze.linalg.DenseMatrix[BigDecimal],That]
starting with method canMulM_M_def in trait DenseMatrixOpsLowPrio
val cal = dm*dm.t
^
Error:(11, 15) not enough arguments for method *: (implicit op: breeze.linalg.operators.OpMulMatrix.Impl2
[breeze.linalg.DenseMatrix[BigDecimal],breeze.linalg.DenseMatrix[BigDecimal],That])That.
Unspecified value parameter op.
val cal = dm*dm.t
^
我在问如何在 Breeze 中对 DenseMatrix[BigDecimal] 实现乘法或加法。我已阅读 https://github.com/scalanlp/breeze/wiki/Universal-Functions#enabling-ufuncs-for-your-collection-type 和 http://dlwh.org/tag/breeze/ 试图解决它。但是,作为Breeze和scala的新手,完成这些代码对我来说确实有点困难。希望有人能帮我一个忙!
【问题讨论】:
标签: scala-breeze