我有一个结果 RDD labelsAndPredictions = testData.map(lambda lp: lp.label).zip(predictions)
。这具有以下格式的输出:
[(0.0, 0.08482142857142858), (0.0, 0.11442786069651742),.....]
我想要的是创建一个 CSV 文件,其中一列用于 labels
(上述输出中元组的第一部分),一列用于 predictions
(第二部分元组输出)。但我不知道如何使用 Python 在 Spark 中写入 CSV 文件。
如何使用上述输出创建 CSV 文件?
最佳答案
只需将 RDD 的行 (labelsAndPredictions
) map
转换为字符串(CSV 的行),然后使用 rdd.saveAsTextFile()
.
def toCSVLine(data):
return ','.join(str(d) for d in data)
lines = labelsAndPredictions.map(toCSVLine)
lines.saveAsTextFile('hdfs://my-node:9000/tmp/labels-and-predictions.csv')
关于python - 如何将生成的 RDD 写入 Spark python 中的 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31898964/