将数据框记录保存在制表符分隔文件中

时间:2017-12-12 19:44:43

标签: apache-spark pyspark

如何将DataFrame的记录保存到制表符分隔的输出文件中? DataFame如下所示:

>>> csvDf.show(2,False)

1. |1  |Eldon Base for stackable storage shelf, platinum  |Muhammed
MacIntyre|3  |-213.25|38.94 |35   |Nunavut|Storage & Organization   
|0.8 | 
2. |2  |1.7 Cubic Foot Compact "Cube" Office Refrigerators|Barry
French      |293|457.81 |208.16|68.02|Nunavut|Appliances            
|0.58|

3 个答案:

答案 0 :(得分:7)

只需将delimiter选项传递给作者:

csvDf.write.option("delimiter", "\t").csv(output_path)

在Spark 1.6中使用spark-csv package(检查README获取详细说明)并使用相同的选项:

csvDf.write.option("delimiter", "\t").format("com.databricks.spark.csv").save(output_path)

答案 1 :(得分:0)

这对我有用......

  
    
      

csvDf.rdd.map(lambda x:'\ t'.join(x))。coalesce(1).saveAsTextFile('/ output / csv / 6.csv')

    
  

答案 2 :(得分:0)

在Spark 2.4.3中,它是:

csvDf
.write
.option("sep", "\t")
.option("encoding", "UTF-8")
.csv(targetFilePath)