在pyspark中按元素添加列表

问题描述:

我想采用整数列表的RDD并将其减少到一个列表。例如...在pyspark中按元素添加列表

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

[3, 5, 7, 9] 

我可以使用Python中的zip功能,但不知道如何复制它在火花除了做收集对象上做到这一点,但我想保持rdd中的数据。

如果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