Pyspark, como dividir quando há vários delimitadores em uma coluna [duplicado]

Esta pergunta já tem uma resposta aqui:

Carregar arquivo CSV com Spark 11 respostas
rdd1=sc.textFile('/user/training/checkouts').map(lambda line:line.split(',')).map(lambda fields:((fields[1],fields[3],fields[5]), 1) )

Eu usei o comando acima para obter apenas valor com base nos campos [1], nos campos [3] e nos campos [5].

Os valores abaixo são obtidos como uma saída real, porque a segunda coluna no arquivo de entrada inclui várias vírgulas que usei para dividir a linha. Como posso dividir os dados quando existem vários delimitadores? Ou existe alguma maneira de descartar as tabelas que não quero usar? Eu quero excluir várias colunas tem uma string longa que faz com que esse problema aconteça

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

Estou esperando a saída seguinte.

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

Carregarei exemplos de valores de entrada para sua compreensão do meu problema,

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

Como você pode ver, nesta entrada de exemplo, na segunda linha, inclui muitas vírgulas que me impedem de dividir.

questionAnswers(1)

yourAnswerToTheQuestion