Uma lista como chave para o reduzaByKey do PySpark

Eu estou tentando chamar a função reduzirByKey do pyspark nos dados do formato(([a,b,c], 1), ([a,b,c], 1), ([a,d,b,e], 1), ...

Parece que o pyspark não aceitará uma matriz como a chave na chave normal, redução de valor simplesmente aplicando .reduceByKey (add).

Eu já tentei primeiro converter a matriz em uma string,.map((x,y): (str(x),y)) mas isso não funciona porque o pós-processamento das seqüências de volta para matrizes é muito lento.

Existe uma maneira de fazer com que o pyspark use a matriz como uma chave ou use outra função para converter rapidamente as strings de volta em matrizes?

aqui está o código de erro associado

  File "/home/jan/Documents/spark-1.4.0/python/lib/pyspark.zip/pyspark/shuffle.py", line 268, in mergeValues
    d[k] = comb(d[k], v) if k in d else creator(v)
TypeError: unhashable type: 'list'
    enter code here

RESUMO:

entrada:x =[([a,b,c], 1), ([a,b,c], 1), ([a,d,b,e], 1), ...]

saída desejada:y =[([a,b,c], 2), ([a,d,b,e], 1),...] de modo que eu pudesse acessara pory[0][0][0] e2 pory[0][1]

questionAnswers(1)

yourAnswerToTheQuestion