如何使用spark Vector.foreachActive方法?

时间:2016-11-17 07:26:14

标签: scala apache-spark

在doc:

org.apache.spark.ml.linalg.Vector
@Since("2.0.0")
def foreachActive(f: (Int, Double) => Unit): Unit

我的代码是:

var map: Map[Int,Double] = Map()
vectors.first().foreachActive((a,b) => map += (a -> b))
println(map.max)

var maxValue: Map[Int,Double] = Map()
var maps: Map[Int,Double] = Map()
vectors.map(vec => {
  vec.foreachActive((a,b) => maps += (a -> b))
  maxValue += maps.max
})
println(maxValue)

控制台的结果是:

(257376,1.2809338454620642)
Map()

为什么我无法获得maxValue?

0 个答案:

没有答案