Spark read.csv не игнорирует разделитель внутри кавычек - PullRequest
0 голосов
/ 02 ноября 2019

Я использую 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|
+--------------------+----+----+

Проблема здесь в том, что я хочуувидеть то же поведение, что и в третьей записи, для второй и четвертой записи. То есть любой разделитель между кавычками должен игнорироваться.

Но на практике происходит следующее: если я добавляю что-либо перед кавычками, разделитель больше не игнорируется.

Что такоеЯ поступаю неправильно в этом сценарии?

Спасибо.

...