Dataframe Pyspark-将数据帧导出为文本

Dataframe Pyspark-将数据帧导出为文本,dataframe,apache-spark,pyspark,Dataframe,Apache Spark,Pyspark,我在做一些Pypark任务 我使用一个拼花文件作为源,有3列 其中之一需要将我的数据帧导出到以制表符分隔的文本文件中。我可以使用以下操作执行此操作: `df.write.option("text").csv("output_file"`) 但是,它导出的是csv文件,而不是文本文件。我能够看到导出文本文件的唯一方法是只导出一列,但使用该选项,我松开了分隔符部分。例如: df = df.select(concat_aws('\t',*result.colu

我在做一些Pypark任务

我使用一个拼花文件作为源,有3列

其中之一需要将我的数据帧导出到以制表符分隔的文本文件中。我可以使用以下操作执行此操作:

`df.write.option("text").csv("output_file"`)
但是,它导出的是csv文件,而不是文本文件。我能够看到导出文本文件的唯一方法是只导出一列,但使用该选项,我松开了分隔符部分。例如:

df = df.select(concat_aws('\t',*result.columns).alias('data'))
与CSV导出类似,使用分隔符导出文本文件的更相似方法是什么?例如,在Scala中,这非常简单:

df.map(row => row.mkString("\t")).write.text("")
Python上有等价物吗


谢谢

您尝试使用
csv
方法几乎是正确的,您只需将分隔符从默认值(逗号)更改为制表符:

df.write.option(“sep”、“\t”).csv(“输出文件”)

请注意,CSV实际上是一种文本格式(您可以使用文本编辑器查看它;它包含表格数据,其中行由新行字符分隔,字段由逗号分隔)。它的制表符分隔的变体有时称为TSV。

您尝试使用
csv
方法几乎是正确的,您只需将分隔符从默认值(逗号)更改为制表符:

df.write.option(“sep”、“\t”).csv(“输出文件”)
请注意,CSV实际上是一种文本格式(您可以使用文本编辑器查看它;它包含表格数据,其中行由新行字符分隔,字段由逗号分隔)。以制表符分隔的变体有时称为TSV