df = sqlContext.read \ .., похоже, не работает с spark 2.3.1, даже если я добавлю в кавычки и экранирование.

от вопрос уже есть ответ здесь:

Загрузить файл CSV с помощью Spark 11 ответов
rdd1=sc.textFile('/user/training/checkouts').map(lambda line:line.split(',')).map(lambda fields:((fields[1],fields[3],fields[5]), 1) )

Я использовал вышеупомянутую команду, чтобы получить только значение, основанное на fields [1], fields [3] и fields [5].

Приведенные ниже значения приведены в качестве реального вывода, потому что второй столбец во входном файле содержит несколько запятых, которые я использовал для разбиения строки. Как я могу разделить данные, когда есть несколько разделителей? Или есть какой-то способ отбросить таблицы, которые я не хочу использовать? Я хочу удалить несколько столбцов с длинной строкой, которая делает эту проблему

[((u'BibNum', u'ItemCollection', u'ItemLocation'), 1),
 ((u'3011076', u' 1481425749', u' 9781481425742"'), 1),
 ((u'2248846', u' c1999."', u'"'), 1)]

Я ожидаю следующего выхода.

   [((u'BibNum', u'ItemCollection', u'ItemLocation'), 1),
     ((u'3011076', u' qna, u' ncrdr"'), 1),
     ((u'2248846', u' qkb."', ncstr'"'), 1)]

Я буду загружать образцы входных значений для вашего понимания моей проблемы,

3011076,
"A tale of two friends / adapted by Ellie O'Ryan ; illustrated by Tom Caulfield, Frederick Gardner, Megan Petasky, and Allen Tam.",
"O'Ryan, Ellie",
"1481425730, 1481425749, 9781481425735, 9781481425742",
2014.,
"Simon Spotlight,",
"Musicians Fiction, Bullfighters Fiction, Best friends Fiction, Friendship Fiction, Adventure and adventurers Fiction",
jcbk,
ncrdr,
Floating,
qna,
09/01/2017,
1

Как вы можете видеть, в этом примере ввода, во второй строке, он содержит много запятых, которые мешают мне разделить.

Ответы на вопрос(1)

Ваш ответ на вопрос