2016-08-26 2 views
0

Ich habe eine Liste der Schlüssel-Liste-Paare, wobei der Wert für einen bestimmten Schlüssel eine Liste von Elementen ist wie folgt:Pyspark - Aus einem Schlüssel-Liste-Paar, nur den Schlüssel und das erste Element der Liste abrufen

a = [('json1', ['9', 3]), ('json2', ['5', 2])] 

von a, würde ich mag nur mit dem Schlüssel bis beenden und das erste Element der Liste wie folgt:

b = [('json1', '9'), ('json2', '5')] 

Welche Operationen in pyspark sollte ich für immer diese verwenden?

Antwort

0

Es ist sehr einfach. Sie benötigen nur Kartenoperationen.

a = sc.parallelize([('json1', ['9', 3]), ('json2', ['5', 2])]) 
b=a.map(lambda x:(x[0],x[1][0])) 
print(b.take(2)) 

Ausgang

[('json1', '9'), ('json2', '5')] 

können Sie pyspark docs über Karte und andere Operationen lesen.

Verwandte Themen