将行矩阵转换为微风密集矩阵

时间:2016-10-12 15:03:30

标签: apache-spark scala-breeze

我有一个MLLIB分布式行矩阵,其中行顺序无关紧要。有没有办法轻松将其转换为微风密集矩阵?我想象逐行映射可能会起作用,但我对整个微风都比较陌生。

编辑:使用X.rows.map(x => x.toArray),我设法将其转换为org.apache.spark.rdd.RDD [Array [Double]]形式的RDD。我相信这是朝着正确方向迈出的一步......

2 个答案:

答案 0 :(得分:6)

对您的RDD进行收集。它会给你一个Array[Array[Double]]

val array = your_rdd.collect()

将数组数组转换为矩阵的方法是执行以下操作:

val dm = DenseMatrix(array.map(_.toArray):_*)

部分答案来自here。希望这能解决问题。

答案 1 :(得分:3)

结束使用以下代码。

{{1}}

谢谢,@ ar7寻求帮助。