如何在Scala Spark中将稀疏矢量转换为密集?

时间:2016-02-21 05:24:06

标签: scala apache-spark apache-spark-mllib

我有一个稀疏的向量:

(453,[0,4,11,16,39,56,109],[1.0,1.0,1.0,1.0,1.0,1.0,1.0])

我需要将其转换为密集向量(应该能够看到所有453个值)。

如何在Scala Spark中执行此操作?

1 个答案:

答案 0 :(得分:7)

可以使用SparseVectortoDense方法完成:

val sv = Vectors.sparse(5, Array(0, 3), Array(1.5, -1.5))
sv.toDense
// res0: org.apache.spark.mllib.linalg.DenseVector = [1.5,0.0,0.0,-1.5,0.0]