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

mon*_*lol 2 scala-breeze apache-spark

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

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

ar7*_*ar7 6

收集您的RDD.它会让你回归Array[Array[Double]].

val array = your_rdd.collect()

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

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

部分答案来自这里.希望这能解决问题.

  • 如果类型已经是`Array [Array [Double]]`,则无需转换为数组,只需使用`DenseMatrix(array:_*)` (2认同)