如何在pyspark中读取和写入coordinateMatrix到文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在pyspark中读取和写入coordinateMatrix到文件相关的知识,希望对你有一定的参考价值。
我在pyspark中有一个非常稀疏的数据帧,我将这个数据帧转换为CoordinatedMatrix。现在我想在hdfs上保存这个矩阵,以便稍后重用它来训练我的模型。不幸的是,我没有找到任何解决方案。有什么建议?
例:
>> mat.entries.collect()
[MatrixEntry(1, 0, 1.0), MatrixEntry(1, 1, 1.0), MatrixEntry(1, 2, 2.0),MatrixEntry(1, 3, 1.0), MatrixEntry(2, 0, 2.0), MatrixEntry(2, 1, 1.0), MatrixEntry(2, 2, 3.0), MatrixEntry(2, 3, 5.0)]
答案
这里没有推荐的格式,CoordinateMatrix
结构非常简单,所以你可以选择任何东西,例如Parquet:
mat.entries.toDF().write.parquet(path)
后来读到:
CoordinateMatrix(spark.read.parquet(path).rdd.map(lambda row: MatrixEntry(*row)))
以上是关于如何在pyspark中读取和写入coordinateMatrix到文件的主要内容,如果未能解决你的问题,请参考以下文章