当前位置: 首页 > 面试题库 >

如何将生成的RDD写入Spark python中的csv文件

陈翰林
2023-03-14
问题内容

我有一个结果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文件?


问题答案:

然后只需map将RDD(labelsAndPredictions)的行转换为字符串(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')


 类似资料:
  • 我使用supercsv CsvBeanWriter将值写入csv文件。 示例类: 我得到的结果是: 注意

  • 问题内容: 我认为我应该完成一项我似乎无法解决的非常简单的任务。 如何将Python字典写入csv文件?我想要的只是将字典键写入文件的第一行,并将键值写入第二行。 我最接近的是以下内容(我是从别人的帖子中获得的): 问题是,上面的代码似乎只将密钥写入第一行,仅此而已。我没有将值写入第二行。 有任何想法吗? 问题答案: 您使用的是期望字典列表而不是字典的列表。您只想DictWriter.writer

  • 问题内容: 我想打开一个新的文本文件,然后将numpy数组保存到该文件。我写了这段代码: 我收到此错误: 有人知道怎么了吗? 另外,我在终端中找到了一个名为file_2的空文件,但是里面没有任何内容。 编辑:我正在使用Python3.4 问题答案: 看来您正在使用Python3。因此,请以二进制模式()而非文本模式()打开文件: 另外,关闭文件句柄,以确保将所有内容都写入磁盘。您可以使用-stat

  • 我目前正在用eclipse AST生成源代码。与大多数示例不同,我在一个独立的应用程序中从头开始生成源代码,而不是eclipse插件。 从ASTParser读入时,您可以通过调用来激活修改,但当从头开始创建AST时,这不起作用,例如通过调用。 因此,不可能通过和

  • 我们有一个名为survey.csv的csv文件,我们需要将其加载到rdd中。 我们尝试了这个: 它不起作用。有人能帮忙吗?

  • 我试图将数据写入csv文件,我创建了四列作为 除了序列号,其他三个字段是列表