我如何将元组元组组合成一个元组?

问题描述

我通过链接连接加入了三个 RDD 的 spark: joined_rdds = rdd1.join(rdd2).join(rdd3)

joined_rdds.collect() 的输出是:

[(key,(([list1],[list2]),([list3]))),(key,...]

我如何将该输出转换为[(key,([list1],[list2],[list3])),([list1,] [list2],...]

解决方法

我想出了一个解决方法,但这对于更大的连接来说并不理想:

joined_rdds = rdd1.fullOuterJoin(rdd2).fullOuterJoin(rdd3)

combined_tuples= joined_rdds.map(lambda x: (x[0],(x[1][0][0],x[1][0][1],x[1][1])))