Spark Scala-将数据框另存为带标题的文本文件

时间:2018-10-05 19:29:00

标签: scala apache-spark

DataFrameWriter csv方法生成带标题的csv零件文件

df.write.mode(SaveMode.Overwrite)
.option("header","true").option("delimiter", "\t")
.csv("/tmp/files")

Databrick的spark-csv以及带有标题的csv文件也是如此,但对于带有标题的文本文件则没有任何作用。

dataFrame.write
  .format("com.databricks.spark.csv")
  .option("header", "true")
  .option("delimiter",<your delimiter>)
  .save(output)

但是,文本方法生成的文本文件仅包含数据,没有标题(列名)

df.write.mode(SaveMode.Overwrite).option("header","true")
.option("delimiter", "\t")
.text("/tmp/files")

我尝试在saveAsTextFile上使用RDD,但是结果是相同的,即没有标题的文本文件。

df.rdd.map(c => c(1) + "\t" + c(0) + "\t" + c(2))
.saveAsTextFile("/tmp/files")

如何获取带有标题的零件文本文件?

1 个答案:

答案 0 :(得分:0)

您不应该使用text方法。如果需要标题和定界符,则应使用csv方法:

df.write.mode(SaveMode.Overwrite).option("header","true")
  .option("delimiter", "\t")
  .csv("/tmp/files")