【发布时间】:2017-09-11 10:20:17
【问题描述】:
下面是我的 spark/SCALA 程序,用于读取我的源文件。 (CSV 文件)
val csv = spark.read
.format("com.databricks.spark.csv")
.option("header", "true") //reading the headers
// .option("mode", "DROPMALFORMED")
.option("inferSchema", "true")
.load("C:\\TestFiles\\SAP_ENT_INVBAL.csv"); //.csv("csv/file/path") //spark 2.0 api
csv.show()
csv.printSchema()
csv.show()
}
输出包含文件头,但对于我的处理,我需要不同的命名约定而不是文件头。
我已经尝试了几个选项并且效果很好。
- 重命名数据框列
- 使用 add(StructField 函数
但我想让我的代码通用。只需在读取文件时传递架构文件并根据架构文件创建带有列的数据框。
请帮助解决这个问题。
【问题讨论】:
标签: java scala apache-spark