Я использую 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|
+--------------------+----+----+
Проблема здесь в том, что я хочуувидеть то же поведение, что и в третьей записи, для второй и четвертой записи. То есть любой разделитель между кавычками должен игнорироваться.
Но на практике происходит следующее: если я добавляю что-либо перед кавычками, разделитель больше не игнорируется.
Что такоеЯ поступаю неправильно в этом сценарии?
Спасибо.