我有两个 RDD 有公共变量,其格式如下:
x = sc.parallelize([("A", 1), ("B", 4),("A",2)])
y = sc.parallelize([("A", -1),("B", 5)])
然后我想使用公共变量与他们分组。"A"和"B"。
我尝试使用以下命令:
z = [(x, tuple(map(list, y))) for x, y in sorted(list(x.cogroup(y).collect()))]
print(z)
我得到的是
[('A', ([1, 2], [-1])), ('B', ([4], [5]))]
但是,我想要的是
[('A', ([1], [-1])), ('B', ([4], [5])),('A', ([2], [-1]))]
如何更改代码以获得如上所示的输出?谢谢你。
ibeautiful
相关分类