Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 为什么在spark分区数据中将列重命名为c0、c1?_Apache Spark_Apache Spark Sql - Fatal编程技术网

Apache spark 为什么在spark分区数据中将列重命名为c0、c1?

Apache spark 为什么在spark分区数据中将列重命名为c0、c1?,apache-spark,apache-spark-sql,Apache Spark,Apache Spark Sql,以下是我的原始数据 Name |Date | +-----+----------+ |Azure|2018-07-26| |AWS |2018-07-27| |GCP |2018-07-28| |GCP |2018-07-28| 我使用日期列对数据进行了分区 udl_file_df_read.write.format("csv").partitionBy("Date").mode("append").save(outputPath) val events = spark.r

以下是我的原始数据

 Name |Date      |
+-----+----------+
|Azure|2018-07-26|
|AWS  |2018-07-27|
|GCP  |2018-07-28|
|GCP  |2018-07-28|
我使用日期列对数据进行了分区

udl_file_df_read.write.format("csv").partitionBy("Date").mode("append").save(outputPath)

val events = spark.read.format("com.databricks.spark.csv").option("inferSchema","true").load(outputPath)

events.show()
输出列名为
(c0,日期)
。我不知道为什么缺少原始列名,如何保留列名


注意:这不是一个重复的问题,因为以下原因,此处除分区列以外的列被重命名为c0,并且在选项中指定基本路径不起作用。

您得到的列名类似于
c0
,因为问题中使用的CSV格式不保留列名

你可以试着用英语写作

udl_file_df_read
  .write.
  .option("header", "true")
  ...
同样地读

spark
  .read
  .option("header", "true")

您会得到像
c0
这样的列名,因为问题中使用的CSV格式不会保留列名

你可以试着用英语写作

udl_file_df_read
  .write.
  .option("header", "true")
  ...
同样地读

spark
  .read
  .option("header", "true")

当我写文件时,我可以通过将选项header设置为true来保留模式,我之前认为我只能使用此选项读取数据


udl_文件_df_read.write.option(“header”=“true”)。格式(“csv”).partitionBy(“Date”).mode(“append”).save(outputPath)

在我写文件时,通过将选项头设置为true,我可以保留模式,我以前认为我只能使用此选项读取数据


udl_文件_df_read.write.option(“header”=“true”)。格式(“csv”).partitionBy(“Date”).mode(“append”).save(outputPath)

谢谢,但我的要求是我需要csv格式的输出。当我们使用csv作为分区格式时,是否有其他方法保留列名?谢谢,但我的要求是我需要作为csv的输出格式。当我们使用csv作为分区格式时,还有其他方法保留列名吗?