gpt4 book ai didi

apache-spark - 将 Spark org.apache.spark.mllib.linalg.Matrix 保存到文件

转载 作者:行者123 更新时间:2023-12-01 19:23:06 26 4
gpt4 key购买 nike

Spark MLLib 中的相关结果是 org.apache.spark.mllib.linalg.Matrix 类型。 (参见http://spark.apache.org/docs/1.2.1/mllib-statistics.html#correlations)

val data: RDD[Vector] = ... 

val correlMatrix: Matrix = Statistics.corr(data, "pearson")

我想将结果保存到文件中。我怎样才能做到这一点?

最佳答案

这里有一个简单有效的方法将矩阵保存到 hdfs 并指定分隔符。

(使用转置是因为 .toArray 是列主格式。)

val localMatrix: List[Array[Double]] = correlMatrix
.transpose // Transpose since .toArray is column major
.toArray
.grouped(correlMatrix.numCols)
.toList

val lines: List[String] = localMatrix
.map(line => line.mkString(" "))

sc.parallelize(lines)
.repartition(1)
.saveAsTextFile("hdfs:///home/user/spark/correlMatrix.txt")

关于apache-spark - 将 Spark org.apache.spark.mllib.linalg.Matrix 保存到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29649904/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com