2017-10-21 117 views
0

我想採用整數列表的RDD並將其減少到一個列表。例如...在pyspark中按元素添加列表

[1, 2, 3, 4] 
[2, 3, 4, 5] 

[3, 5, 7, 9] 

我可以使用Python中的zip功能,但不知道如何複製它在火花除了做收集對象上做到這一點,但我想保持rdd中的數據。

回答

1

如果rdd所有元素都是相同的長度,你可以使用reducezip

rdd = sc.parallelize([[1,2,3,4],[2,3,4,5]]) 

rdd.reduce(lambda x, y: [i+j for i, j in zip(x, y)]) 
# [3, 5, 7, 9] 
+0

的感謝!我嘗試過類似的東西,但沒有想到將它分解爲x和y。 – pad11