将IndexedRowMatrix保存到scala spark文件

时间:2016-03-15 09:07:29

标签: scala apache-spark

我有一个IndexRowMatrix类型的矩阵。

Array(IndexedRow(0,(3,[0,2],[1.0,1.0])), IndexedRow(1,(3,[0,1],[1.0,1.0])), IndexedRow(2,(3,[0],[1.0])))

我尝试将其写入csv文件

indexedRowMatrix.rows.saveAsFile("/user/test/output.csv")

输出格式为

 IndexedRow(0,(3,[0,2],[1.0,1.0])), IndexedRow(1,(3,[0,1],[1.0,1.0])), IndexedRow(2,(3,[0],[1.0]))

我希望采用以下格式

1.0  ,    0   ,   1.0
1.0  ,   1.0  ,    0
1.0  ,    0   ,    0

1 个答案:

答案 0 :(得分:1)

找到解决方案

val test = indexedRowMatrix.rows.map( x=> x.vector.toDense)
test.coalesce(1, true).saveAsTextFile("rdd")