【发布时间】:2016-09-25 06:10:27
【问题描述】:
Adendo:这似乎是一个 scala IDE 错误,因为使用命令行 sbt 可以顺利编译和运行。我会结束这个问题,但 StackOverflow 不允许
我无法在 Breeze 中对矩阵求和或乘以标量
如果我尝试:
val z = DenseMatrix.zeros[Double](5,3)
z + 2.0
我收到两个错误:
could not find implicit value for parameter op: breeze.linalg.operators.OpAdd.Impl2[breeze.linalg.DenseMatrix[Double],Double,That]
not enough arguments for method +: (implicit op: breeze.linalg.operators.OpAdd.Impl2[breeze.linalg.DenseMatrix[Double],Double,That])That. Unspecified value parameter op.
如果我尝试 * 、 :* 、 *: 、 :+ 和 +: 会发生同样的事情,但错误略有不同。
如果它是 DenseVector 而不是 DenseMatrix 并且我使用 :+ .
如果我在 scala IDE 工作表中尝试它,它会产生错误,但会正确打印结果矩阵。
我正在使用 Scala IDE 4.4.1 ,微风 0.12 ,scala 2.11.8
【问题讨论】:
-
嗯,对我有用。您的导入语句是什么样的?你用的是
2.11版本的微风吗? -
我正在使用 import blink.linalg._ 来导入和微风 0.12。但是您的评论让我尝试绕过 Eclipse 进行编译,这似乎是一个错误(我编辑了我的问题),所以这个问题毫无意义
-
更有可能是配置错误而不是 Scala IDE 错误。我会检查您的
build.sbt文件并确保您的项目设置正确。 -
同样的问题。斯卡拉 2.12。适用于 SBT,不适用于 Scala IDE。不知道是配置问题还是bug,但是很烦。
标签: scala scala-breeze