Pyspark - 从键列表对中,仅检索键和列表的第一个元素

时间:2016-08-26 23:54:51

标签: list pyspark key-value

我有一对密钥列表对,其中给定密钥的值是一个元素列表,如下所示:

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

从a开始,我想最终只得到列表中的键和第一个元素,如下所示:

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

我应该使用pyspark中的哪些操作来获取此信息?

1 个答案:

答案 0 :(得分:0)

很简单。您只需要地图操作。

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

输出

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

您可以阅读有关地图和其他操作的pyspark docs