Spark read.csv不会忽略引号内的分隔符

时间:2019-11-02 00:26:44

标签: csv apache-spark pyspark apache-spark-sql

我正在使用Pyspark 2.4,以便将简单的csv文件读入数据帧,然后对控制台执行show()。 这是有问题的csv,以及我运行的代码:

CSV:

A|B|C
AAAA|BBBB|CCCC
A"||114|WWWW|CC|BBBBB|AAAF||"ZZZZ FFFF
"||114|WWWW|CC|BBBBB|AAAF||"ZZZZ FFFF
A"||114|WWWW|CC|BBBBB|AAAF||"ZZZZ FFFF | FFF | GGGG

代码:

>>> df_am_event =  
spark.read.option('delimiter','|').option('quote','"').option('header','true').csv('testDS')
>>> df_am_event.show()
+--------------------+----+----+
|                   A|   B|   C|
+--------------------+----+----+
|                AAAA|BBBB|CCCC|
|                  A"|null| 114|
|"||114|WWWW|CC|BB...|null|null|
|                  A"|null| 114|
+--------------------+----+----+

这里的问题是,对于第二和第四条记录,我希望看到与第三条记录相同的行为。也就是说,引号之间的任何分隔符都应忽略。

但是实际上,如果我在引号之前添加了任何内容,则分隔符将不再被忽略。

在这种情况下我怎么了?

谢谢。

0 个答案:

没有答案