Spark - CSV文本加载解析错误

时间:2016-11-29 18:08:42

标签: scala csv apache-spark

我正在使用以下代码加载其中包含文本/备注的csv文件。

val data = sqlContext
      .read
      .format("com.databricks.spark.csv")
      .option("header", "true")
      .option("inferSchema", "true")
      .option("parserLib", "UNIVOCITY")
      .load(dataPath)
      .na.drop()

备注不是任何特定格式。在加载过程中,我收到此错误:

com.univocity.parsers.common.TextParsingException: Error processing input: null
Identified line separator characters in the parsed content. This may be the cause of the error. The line separator in your parser settings is set to '\n'. 

我很感激任何帮助。感谢。

1 个答案:

答案 0 :(得分:2)

我没有权利对问题发表评论,我正在添加答案。

正如您na.drop()所做的那样,也可以使用option("mode", "DROPMALFORMED")

val data = sqlContext
      .read
      .format("com.databricks.spark.csv")
      .option("header", "true")
      .option("inferSchema", "true")
      .option("mode", "DROPMALFORMED")
      .option("parserLib", "UNIVOCITY")
      .load(dataPath)
      .na.drop()

BTW, databricks spark csv 内置于Spark 2.0 +